我试图在渲染amCharts Gantt图时使用zoomToDates函数:http://jsfiddle.net/Lw2bhxm0/1/
// Doesn't appear to work right...only a few of the events are shown
chart.addListener("rendered", function(event) {
event.chart.zoomToDates(new Date(2016, 1, 1), new Date(2016, 1, 2));
});
结果与通过常规滑动条或通过单击和拖动缩放到日期时的结果大不相同。此外,如果我尝试缩放到数据范围之外的日期,它会缩放到同一时段,但数据丢失。我使用这个错误还是错误?
答案 0 :(得分:2)
zoomToDates
是基于categoryAxis的函数,但甘特图使用基于日期的valueAxis来绘制日期。你必须调用图表值阿西斯'而是zoomToValues
方法:
chart.addListener("rendered", function(event) {
event.chart.valueAxis.zoomToValues(new Date(2016, 1, 1), new Date(2016, 1, 2));
});
注意:zoomToValues
仅接受基于日期的valueAx的Date对象和毫秒值,而不是zoomToDates
,它也可以接受基于字符串的日期。您可以使用AmCharts.stringToDate
将基于字符串的日期转换为Date对象,以便与zoomToValues
一起使用,例如chart.zoomToValues(AmCharts.stringToDate("2016-02-01", "YYYY-MM-DD"), AmCharts.stringToDate("2016-02-02", "YYYY-MM-DD"));