Улучшить визуализацию графика JUNG

я использую jung для визуального отображения больших наборов данных (1000 узлов), но система становится очень медленным, когда я увеличиваю или уменьшаю масштаб или перемещаю узел. Можно ли как-то улучшить отображение графиков в JUNG?


person main2010    schedule 29.04.2010    source источник


Ответы (2)


Способ, который я использовал для улучшения рендеринга на графиках, заключался в фильтрации краев графика. Каждый раз, когда вы пытаетесь переместить граф, платформа выполняет огромные вычисления, чтобы изменить положение каждой вершины и ребра, и это приводит к снижению производительности. Фильтрация может быть выполнена путем добавления преемника AbstractPopupGraphMousePlugin к используемому вами объекту DefaultModalGraphMouse. Просто переопределите handlePopup(MouseEvent mouseEvent).

person Dimitar Ivanov    schedule 09.08.2010
comment
Димитар: Вы имеете в виду фильтрацию, чтобы определить, находятся ли координаты x и y вершин ребра за пределами экрана? - person sdasdadas; 22.03.2013
comment
Да, вы должны динамически рассчитывать, когда узлы находятся в границах видимой части экрана. - person Dimitar Ivanov; 27.03.2013

Не знаю конкретно для графиков, но обычные варианты есть

  1. Обрабатывать только то, что на самом деле отображается на экране (увеличение)

  2. Скрыть детали при уменьшении масштаба

  3. Обновляйте только ту часть экрана, в которой действительно изменилось содержимое (переместите узел)

person kazanaki    schedule 02.06.2010