Charts.js из сеанса var, эффект мерцания

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

Спасибо.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
120
1

Ответы 1

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

Удачи.

Другие вопросы по теме