我正在尝试使用dojox.charting输出月度数据的简单图表。
目前,我希望每个月每天显示一个点,持续一年。我有工作。
问题是:我找不到为每个月添加图表标签的方法。
我希望“1月”为0,“2月”为31,“3月”为59,等等。
据我所知,dojox.charting仅支持在常规值上使用标签,例如。 30,60,90等。
有什么方法可以轻松地做到这一点,或者是否需要更改dojo的代码?
请参阅此jsfiddle,例如:http://jsfiddle.net/svjrz/
答案 0 :(得分:0)
dojox.charting还不支持时间序列。
当我需要提供不规则数据(例如每月)时,通常我会将每日数据插入到月度比例中以常规刻度(1月,2月等)作为线/面积图表(您可以在那里尝试样条) 。当用户向下钻取时,我会切换到每周/每日视图。
是的,这是更多的工作,但结果正是我想要的,而不是“什么是可用的”。
答案 1 :(得分:0)
我提供了一个可能的解决方案in this post。
基于时间的图表需要填充非连续数据。
您需要在SQL或PHP中为X轴生成完整的一系列日期值。我使用带有一个DATE字段的日历表的MySQL技巧,以及用一个范围内的所有日期填充它的过程。 JavaScript可以直接转换ISO日期。
然后,您可以使用以下方法将分散的数据输出为基于时间的连续系列:
SELECT DISTINCT(t0.datefield) AS Date, SUM(t1.sales) AS Sales FROM T_Sales AS t1 RIGHT JOIN T_Cal AS t0 ON t0.datefield = DATE(t1.saledate) WHERE t0.datefield >= DATE(NOW() - INTERVAL 6 MONTH) AND t0.datefield <= DATE(NOW())