我有一个4 y轴的图表工作正常,但当我点击图例值进行单独检查时,我遇到了问题。
我在这里创建了我的问题样本:
https://jsfiddle.net/276rv95s/
当您注意到温度和常数的标签值错误放置时。我不知道我的代码有什么问题。
这是我的代码:
Highcharts.chart('container', {
chart: {
zoomType: 'xy'
},
title: {
text: 'Sample'
},
xAxis: [{
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
crosshair: true
}],
yAxis: [{ // Primary yAxis
labels: {
style: {
color: Highcharts.getOptions().colors[2]
}
},
title: {
text: 'Temperature',
style: {
color: Highcharts.getOptions().colors[2]
}
},
}, { // Secondary yAxis
gridLineWidth: 0,
title: {
text: 'Rainfall',
style: {
color: Highcharts.getOptions().colors[0]
}
},
labels: {
style: {
color: Highcharts.getOptions().colors[0]
}
}
}, { // Tertiary yAxis
title: {
text: 'Sea',
style: {
color: Highcharts.getOptions().colors[1]
}
},
opposite: true
},{ // 4th yAxis
gridLineWidth: 0,
title: {
text: 'Constant',
style: {
color: Highcharts.getOptions().colors[3]
}
},
labels: {
style: {
color: Highcharts.getOptions().colors[3]
}
},
opposite: true
}],
series: [{
name: 'Rainfall',
type: 'column',
yAxis: 1,
data: [49.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4],
}, {
name: 'Sea-Level Pressure',
type: 'spline',
yAxis: 2,
data: [1016, 1016, 1015.9, 1015.5, 1012.3, 1009.5, 1009.6, 1010.2, 1013.1, 1016.9, 1018.2, 1016.7],
marker: {
enabled: false
},
dashStyle: 'shortdot',
tooltip: {
valueSuffix: ' mb'
}
}, {
name: 'Temperature',
type: 'spline',
yAxis: 3,
data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6],
}, {
name: 'Constant',
type: 'spline',
data: [2, 6, 5, 1.5, 11, 21.5, 25.2, 26.5, 23.3, 8.3, 1.9, 2.6],
}]
});
答案 0 :(得分:1)
您的代码中存在两个问题:温度系列和常数系列。您需要确保每个系列都指向适当的yAxis索引。
温度系列指向索引3(第四轴),常量没有定义yAxis
,这意味着它是默认值。因此,如果您更改为以下内容:
{
name: 'Temperature',
type: 'spline',
yAxis: 0, //changed this from 3 to 0
data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6],
}, {
name: 'Constant',
type: 'spline',
yAxis: 3, //added this
data: [2, 6, 5, 1.5, 11, 21.5, 25.2, 26.5, 23.3, 8.3, 1.9, 2.6],
}
关于series.yAxis的API :http://api.highcharts.com/highcharts/series.line.yAxis