2017-01-15 4 views
0

Я пытаюсь использовать функцию zoomToDates рендера из участка amCharts Ганта: http://jsfiddle.net/Lw2bhxm0/1/функция amCharts zoomToDates не кажется, работает правильно

// 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)); 
}); 

Результат сильно отличается, чем если бы я масштабируется до даты обычными ползунками или щелчком и перетаскиванием. Кроме того, если я попытаюсь увеличить дату за пределами диапазона данных, он увеличит этот период с отсутствующими данными. Я использую это неправильно или это ошибка?

ответ

1

zoomToDates - это функция, основанная на категорииАксис, однако диаграмма Ганта использует значение даты на основе даты для определения даты. Вы должны вызвать диаграмму valueAxis' zoomToValues метода вместо:

chart.addListener("rendered", function(event) { 
    event.chart.valueAxis.zoomToValues(new Date(2016, 1, 1), new Date(2016, 1, 2)); 
}); 

Примечания: zoomToValues принимает только Date объекты и значение миллисекунды на основе даты valueAxis в отличии от zoomToDates, который также может принимать даты на основе строки. Вы можете использовать AmCharts.stringToDate для преобразования строковых дат в объекты Date для использования с zoomToValues, например. chart.zoomToValues(AmCharts.stringToDate("2016-02-01", "YYYY-MM-DD"), AmCharts.stringToDate("2016-02-02", "YYYY-MM-DD"));

Updated fiddle

+0

спасибо! Это то, что я искал. – Jonathan

 Смежные вопросы

  • Нет связанных вопросов^_^