Рисование графиков на java

Я хочу рисовать графики (узлы и ребра) в Java. Однако, поскольку я не знаю, как это сделать, я хотел бы получить несколько советов, прежде чем начать.

Как мне это сделать?

использовать пакет Graphics2D, верно?

Как насчет меток для узлов? должен ли я использовать что-то вроде drawString и обрабатывать все «центрирование» вручную или создать для этого JLabel? Могу ли я поместить JLabel в среду Graphics2D?

Я искал, но не нашел простой реализации этого. Если вы знаете об одном, пожалуйста, укажите ссылку в своем ответе.

редактировать: решение, которое я ищу, должно иметь возможность удалять узлы, перетаскивать узлы, редактировать метки, создавать узлы, все с помощью событий мыши.

Спасибо.


person nunos    schedule 05.06.2010    source источник


Ответы (6)


"Панель графиков — это простой пример программы для рисования объектов". Более сложные альтернативы приведены здесь.

person trashgod    schedule 05.06.2010

Возможно, это поможет: JUNG.

И вам, вероятно, понадобится прочитать это: http://jung.sourceforge.net/doc/JUNGVisualizationGuide.html

person Community    schedule 05.06.2010

JGraphT и JGraph — еще один вариант. JGraph используется для рендеринга графов в графическом интерфейсе и обработки взаимодействия с пользователем, в то время как JGraphT является базовой моделью графа, структурами данных и алгоритмами.

person Dan Hamlin    schedule 05.06.2010

Если вы хотите сделать это самостоятельно, вам помогут примеры GraphLayout.

Это хороший пример с несколькими строки кода.

Если вы хотите использовать более сложную структуру, проверьте JGraph.

person stacker    schedule 05.06.2010
comment
Ссылка на пример удалена. У вас есть другие ссылки? - person David; 07.06.2013
comment
@David oracle.com/technetwork/java/example1-138026.html - person stacker; 07.06.2013


Я бы посоветовал граппу. http://www.research.att.com/~john/Grappa/grappa.tgz

person svlada    schedule 05.06.2010