2015-05-20 2 views
1

В настоящее время я немного экспериментирую с построением функции с использованием JSXGraph и испытываю некоторые проблемы с производительностью.
Даже если веб-сайт находится на IDLE, он, похоже, проводит много времени в функции removeToInsertLater, вызванной функцией обновления JSXGraph.Проблема с производительностью JSXGraph

Я попытался немного поработать с методом suspendUpdate() платы без успеха.
Так что я задавался вопросом, могу ли я что-то сделать неправильно или просто нормальное поведение JSXGraph?
Я также хотел бы знать, если я не могу что-либо сделать против этого, то какие хорошие альтернативы для построения математических функций.

Edit:
Вот небольшой пример http://jsbin.com/vodokevude/1/edit?html,output
Особенно под светлячок это, кажется, экстремально медленно, делая некоторые панорамирование и масштабирование действия замораживает мой браузер в течение нескольких секунд.

+0

Можете ли вы разместить минимальный пример? Если вы рисуете графики статических функций, предоставление атрибута «needsRegularUpdate: false» будет препятствовать перерасчету графика функции в каждом обновлении. Кроме того, вы можете поэкспериментировать с initBoard («dviid», {minimReflow: value, ...}): Возможные значения: «svg», «all» и «none», где «svg» является значением по умолчанию. –

ответ

0

В приведенном выше примере горизонтальная ось находится в диапазоне от -2 до 2500, а настройки платы содержат grid:true. С помощью этого атрибута создается сетка для каждой целой позиции. Поэтому на холсте имеется около 2500 вертикальных линий. Именно по этой причине конструкция замедляет работу браузера, а цвет фона становится серым. Решение таково:

var board = JXG.JSXGraph.initBoard('jxgbox', { 
    boundingbox: [-2, 10, 10, -2], 
    axis: true, 
    grid: false, ... 
Смежные вопросы