如何获得不规则(例如31、28、31…等)的dojox。
-
24-10-2019 - |
题
我正在尝试使用dojox.harting来输出一个每月数据的简单图表。
目前,我希望它每月每天显示一年的时间。我有工作。
问题是: :我找不到每月添加图表标签的方法。
我希望“ 1月”在0,2月31日,3月31日,59岁,等等。
据我所知,dojox.harting仅支持在常规值上具有标签,例如。 30、60、90等。
有什么办法可以轻松地做到这一点,还是更改Dojo的代码?
请参阅此JSFIDDLE:例如: http://jsfiddle.net/svjrz/
解决方案
dojox.charting尚不支持时间。
当我需要提供不规则的数据(例如每月)时,通常我会插入每日数据,以每月尺度显示常规tick(1月,2月等)作为线/区域图表(您可以在那里尝试使用花样)。当用户向下钻探时,我切换到每周/每日视图。
是的,这是更多的工作,但是结果正是我想要的,而不是“可用的”。
其他提示
我提供了一个可能的解决方案 在这篇文章中.
基于时间的图表需要填充非连续数据。
您将需要生成SQL或PHP中X轴的完整序列日期值。我正在使用带有一个日期字段的日历表的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())
不隶属于 StackOverflow