ОБНОВЛЕНИЕ ПУТЬ ЛЕГКО, ЧТО ЭТО СДЕЛАТЬ:
plotOptions: {
areaspline: {
fillOpacity: 0.5,
threshold: 15 // your y-axis max goes here
}
},
пример: https://jsfiddle.net/mzhukovs/8aqbp3xm/2/
Но это только в том случае, если вы хотите покрыть ВСЕ точки, в противном случае вы используете метод ниже, а НЕ сглаженными линиями (т.е. сплайнами).
Используйте тип ряда диапазонов и установите данные равными, как описано в комментариях, в основном так, чтобы для каждого значения оси x диапазон переходил от вашего фактического значения y к максимальному значению на оси y (которое вы можете установить через свойства оси y, чтобы вы знали это каждый раз, или использовать js, чтобы получить его динамически).
, например
series: [{
name: 'John',
data: [3, 4, 3, 5, 4, 10, 12]
}, {
name: 'Jane',
data: [1, 3, 4, 3, 3, 5, 4]
},
{
name: 'John Range Example',
data: [
[4, 4, 15], // index 0: x-category, 1: equal to point, 2: equal to y-axis max (which you should identify or set yourself explicitly so always known)
[5, 10, 15],
[6, 12, 15]],
type: 'arearange',
lineWidth: 0,
//linkedTo: ':previous',
color: Highcharts.getOptions().colors[0],
fillOpacity: 0.3,
zIndex: 0,
marker: {
enabled: false
}
}]
}
Вот скрипка, где я сделал это только для части одной из строк:
https://jsfiddle.net/mzhukovs/8aqbp3xm/
Если вам вообще не нужна интерактивность этой заштрихованной области, вам придется отключить маркер и действия при наведении, не должно быть сложно. Надеюсь, это поможет!