Библиотека диаграмм, которая не вызывает утечку памяти при обновлении диаграммы

Я хочу построить страницу с интерактивно обновляемыми диаграммами на основе данных, которые асинхронно выбираются с сервера с использованием AJAX. Мне очень нравится jqPlot, но при попытке периодически обновлять график (вызывая replot(), без обновления страницы), это вызывает огромную утечку памяти браузера. Кажется, это хорошо известная проблема, возникающая во всех основных браузерах.

Я не пробовал Flot и Protovis, но быстрый поиск в Google показывает, что они, похоже, имеют те же проблемы.

Вам известна какая-либо библиотека диаграмм JavaScript, которая не приводит к утечке памяти после нескольких обновлений диаграммы?

2 ответа

Решение

Вы могли бы взглянуть на Highcharts. Быстрое поиск в Google, похоже, не означает, что утечки памяти являются большой проблемой.

Чтобы избежать утечки памяти в jqPlot, вы должны удалить привязку и уничтожить ваш график:

var chart;

function yourTimedFunction(data) {
    if (chart) 
    {
        $('#chartDiv *').unbind(); // iexplorer
        chart.destroy();
    }
    chart = $.jqplot('chartDiv', ............. ); 
}
Другие вопросы по тегам