1、时间轴与实际传入的数据不一致,与传入的时间戳少了8小时
问题:highstock默认使用国际标准时区,北京时间是+8-----解决办法全局配置将UTC配置设为false
Highcharts.setOption({
global: {
useUTC: false, // 取消默认时区
}
})
2、highstock的Y轴最大刻度不显示
yAxis: {
showLastLabel: true, // 显示纵坐标最大值
allowDecimals: false, // 控制坐标值是否允许小数显示
}
3、highstock拖动时间轴上方图表展示实时变化
原因:为了修改样式将scrollbar的enabled设为了false,导致拖动时间轴上方图表未能实时变化。不显示scrollbar也可将height设为0。
scrollbar: {
enabled: true,
liveRedraw: true, // 滚动或缩放时是否重绘图表
height: 0,
},
4、隐藏rangeSelector下的操作按钮
Highcharts.setOptions({
lang: {
rangeSelectorZoom: '', // 范围选择器按钮的标签文本,默认为zoom
},
});
rangeSelector: {
buttonTheme: {
style: {
display: 'none',// 隐藏左侧操作按钮
},
},
inputEnabled: false, // 隐藏右侧时间显示
},
5、渐变颜色设置
color: {
linearGradient: {
x1: 0, x2: 0, y1: 0, y2: 1,
},
stops: [
[0, '#FC5400',],
[1, '#FFD400',],
],
},
6、当最小和最大数据点之间的范围很大时,y轴的起始标签为0刻度
通过设置yAxis.startOnTick为false时,后期可能会出现问题。
highcharts可以显示第一个标签,可以设置第一个标签为数据的最小值(相对于其轴)—使用
yAxis.labels.formatter 与 this.isFirst 和 this.axis.dataMin
yAxis: {
labels: {
formatter: function () {
if(this.isFirst) {
return min;
} else {
return this.value;
}
},
}
}
参考链接:https://www.javaroad.cn/questions/328591