【发布时间】:2015-06-04 22:24:34
【问题描述】:
我正在尝试在 Highcharts 中生成与此类似的线图:
|---------------|
|-----|
|--------------|
|-------|
|------|
样本系列数据具有以下形状:
[{"name":"AA01", "data": [[1423102786000,37],[1423102786000,37],[1423124408000,118],[1423124408000,118],[1423139198000,0],[1423139198000,0],[1423139305000,0],[1423139305000,0],[1423139305000,48],[1423139305000,48],[1423142136000,15],[1423142136000,15],[1423147902000,37],[1423147902000,37],[1423153292000,0],[1423153292000,0],[1423461724000,43],[1423461724000,43],[1423461724000,89],[1423461724000,89],[1423461724000,52],[1423461724000,52],[1423461724000,4],[1423461724000,4],[1423461724000,5],[1423461724000,5],[1423480654000,10],[1423480654000,10],[1423480953000,0],[1423480953000,0]]}]
x 轴是整数,y 轴是日期。如您所见,所有数据点成对出现以得到上述布局:y 轴的值连续两次相同,而仅在 x 轴日期发生变化。 我遵循了一些链接来实现这一目标,但没有成功:
如您所见,这些示例和我的代码之间的主要区别在于我没有固定的类别轴,这迫使我将系列数据添加为 [x,y] 对。
我试过[x,null]、[null,null] 和null 之类的东西,但它们都产生了意想不到的结果,主要是x 轴标签(显示为初始标签01-01-1970)和缩放问题(当我放大一个带有点的区域突然出现在01-01-1970 周围)。这让我觉得当日期为空时,Highcharts 假设 01-01-1970,这会弄乱整个图表。这是我的代码,虽然它很简单:
function plot(unit, data) {
$("#chart" + unit).highcharts({
credits: {
enabled: false
},
chart: {
zoomType: 'xy'
},
title: {
text: unit
},
xAxis: {
title: {
text: 'Date'
},
type: 'datetime',
labels: {
format: '{value:%Y-%m-%d}',
rotation: 45,
align: 'left'
},
},
yAxis: {
min: 0,
title: {
text: 'Event number'
}
},
legend: {
enabled: false
},
tooltip: {
formatter: function () {
return '<b>' + convertDate(new Date(this.x)) + '</b><br/>' +
this.series.name + ': ' + this.y + '<br/>' +
'Total: ' + this.point.stackTotal;
}
},
//plotOptions: {},
series: data
});
}//END_FUNCTION
有人可以帮忙吗?
【问题讨论】:
标签: javascript jquery highcharts