Мои диаграммы, загруженные с помощью вызова ajax, выглядят нормально. В настоящее время, когда пользователь обновляет страницу, данные загружаются с сервера БД. Поскольку эти графики довольно большие, я подумал об использовании SESSION var для хранения диаграмм и ускорения времени загрузки (все диаграммы загружаются одновременно). Наконец, я достиг цели, но столкнулся с небольшой проблемой.
Всякий раз, когда код HTML + JS передается из $ _SESSION var, диаграмма отображается, но без эффекта анимации. Вдобавок виден эффект мерцания (масштабирование). Я решил это, установив ответ на false, но это вызвало проблему с ярлыками, которые были слишком маленькими, чтобы их можно было принять.
Я попробовал опцию .destroy (), но безуспешно (тот же эффект мерцания):
var myChart = new Chart(ctw, {
type: 'bar',
data: chart_data,
options: chart_options
});
myChart.destroy();
var myChart = new Chart(ctw, {
type: 'bar',
data: chart_data,
options: chart_options
});
Есть ли способ заставить анимацию включиться (независимо от того, исходит ли диаграмма из $ _SESSION или нет) и не потерять отзывчивость?
Спасибо.






Если myChart.destroy () не работает. Попробуйте myChart.update ().
Попробуйте обновить так:
var myChartData = myChart.data; // need to store in variable first
myChartData = chart_data; // chart_data from $_SESSION var
myChart.data = myChartData;
myChart.update();
Удачи.