charts.js из сессии var, эффект мерцания - PullRequest
0 голосов
/ 12 января 2019

Мои графики, загруженные с помощью 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 или нет) и не потерять отзывчивость?

Спасибо.

1 Ответ

0 голосов
/ 13 января 2019

Если 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();

Удачи.

...