【发布时间】:2014-12-01 22:24:42
【问题描述】:
问题:如何从日期列为道场图表构建 X 轴?
我正在尝试为 Dojo 多系列折线图的 x 轴创建自定义 addAxis() 函数。
传入的 JSON 数据存储在 Observable Memory dstore 中,通过 xhr 从 PHP 脚本中检索,如下所示:
{"Date":1415854800,"Pressure1":23.2312,"Pressure2":17,"Pressure3":0,"Pressure4":0},
{"Date":1415913460,"Pressure1":25.0123,"Pressure2":17,"Pressure3":0.015,"Pressure4":0},...
“日期”字段是通过 MySQL 的 UNIX_TIMESTAMP() 在 Date 列上的 Unix 纪元时间戳。不一定,但我尝试了很多食谱,这是最新的。
我的自定义函数如下所示:
var data = new Memory({data:myjsondata});
...
labelFunc: function(n) {
var d = dates.get(n).Date;
alert(d);
}
就 addSeries 而言,“数据”对象很好:addSeries() 可以正确绘制所有 4 个压力。那是困难的部分。通常。
Dojo 图表接受 dstore、store 和 DataTable 对象,可能还有其他数据类型,但是“API 参考”(在任何其他项目中也称为“简要概述/教程”)仅提供了这些对象的有限配方,并且无用的硬编码数组示例。
数据对象也没有真正记录,我没有时间阅读源代码并找出破解方法,此外,似乎有许多过时的数据对象迭代。很容易迷路,而这正是我所在的地方。
dates.get(n).Date 会抛出异常,因为 'Date' 未定义。根据我正在使用的版本的最新文档,这是一种方法。也许。如果此版本的 Memory dstore 对象文档没有错误。
问题:如何从日期列为道场图表构建 X 轴?
我可以使数据看起来像任何东西,但 X 轴需要反映该日期值,并且行中的每个其他字段都是该日期的 Y 轴值。
【问题讨论】:
标签: javascript mysql dojo dojox.charting