我对highcharts有一个问题......
考虑示例关系:
Data
-----
Id(pk)
Date date
Data varchar(50)
此关系包含数据。重要的是要注意日期是非连续的......即。数据不是每天输入的。示例表可以是
Data
-----
Id Date Data
1 2011-08-22 SomeData
2 2011-08-29 MoreData
我向用户提供HTML / jQuery界面,其中可以从数据库中提取数据并使用highcharts绘制图表。这很有效:
http://dev.speechlink.co.uk/David/fifthiteration/dbgrapher.php
我使用以下jQuery来标记x轴:
xAxis: {
type: 'datetime',
maxZoom: 14 * 24 * 3600000, // fourteen days
lineWidth: 1,
lineColor: '#999999',
title: {
text: 'Date'
}
}
这是系列剧:
series: [{
type: 'spline',
name: data.questionTitle,
pointInterval: 24 * 3600 * 1000,
pointStart: Date.UTC(data.year, data.month, data.day),
data: cdata,
lineColor: '#f6a828',
color: '#418ed6'
}]
现在这个问题很好吧一个问题 - >所有点都被绘制成好像它们是连续几天完成的......事实并非如此......例如,如果在我的表中我在24日提交了数据,那么在29日之前没有数据....数据29日提交的数据错误地放置在25日......
这显然与这个系列论点有关:
**pointInterval: 24 * 3600 * 1000,**
我的数据是这样的:
[23rd,24th,25th,29th]
它可能应该是这样的:
[23rd,24th,25th,null,null,null,29th]
我不确定上面是否是正确的语法..这就是为什么我在这里...你怎么告诉highcharts跳过一个点,但保持相同的点间隔....
编辑:
我在highcharts上看到你可以像这样传递数据:
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container'
},
xAxis: {
type: 'datetime'
},
series: [{
data: [
[Date.UTC(2010, 0, 1), 29.9],
[Date.UTC(2010, 2, 1), 71.5],
[Date.UTC(2010, 3, 1), 106.4]
]
}]
});
有没有办法将正确格式的php数组传递给上面的系列(即带有数据和相关值)..
答案 0 :(得分:1)
如果您没有间隔的数据点,则可以在系列中指定为null。你可以试试[23rd, 24th, 25th, null, null, null, 29th]
它会完美运作。