gpt4 book ai didi

php - Highcharts 问题 - 标记基于 Y 轴的系列数据

转载 作者:搜寻专家 更新时间:2023-10-31 21:43:39 24 4
gpt4 key购买 nike

我有一个关于 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,**

我的数据是这样的:

[23、24、25、29]

而它可能应该是这样的:

[23、24、25、null、null、null、29]

我不确定上面的语法是否正确..这就是我来这里的原因...你如何告诉 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 数组传递给上面的系列(即带有数据和关联值)..

最佳答案

如果您没有某个区间的数据点,那么您可以在系列中指定为空值。您可以尝试 [23rd, 24th, 25th, null, null, null, 29th] 它会完美运行。

关于php - Highcharts 问题 - 标记基于 Y 轴的系列数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7232856/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com