Хорошая библиотека алгоритма графика Java? [закрытый]

В Java все находится в форме класса.

Если вы хотите использовать любой объект, тогда у вас есть две фазы:

  1. Объявить
  2. Инициализация

Пример:

  • Объявление: Object a;
  • Инициализация: a=new Object();

То же самое для концепции массива

  • Объявление: Item i[]=new Item[5];
  • Инициализация: i[0]=new Item();

Если вы не дают секцию инициализации, тогда возникает NullpointerException.

238
задан Nick Fortescue 7 December 2013 в 01:47
поделиться

13 ответов

При использовании JGraph необходимо дать попытку JGraphT, который разработан для алгоритмов. Одной из его функций является визуализация, пользующаяся библиотекой JGraph. Это все еще разрабатывается, но довольно стабильное. Я проанализировал сложность алгоритмов JGraphT некоторое время назад. Некоторые из них не являются самыми быстрыми, но если Вы собираетесь реализовать их самостоятельно и должны отобразить свой график, тогда это мог бы быть лучший выбор. Мне действительно понравилось использовать его API, когда я быстро должен был записать приложение, которое работало над графиком и отображало его позже.

108
ответ дан 3 revs, 3 users 50% 23 November 2019 в 03:22
поделиться

Если бы Вы на самом деле ищете Построение диаграммы библиотек, а не для библиотек Node/Edge Graph я предложил бы разориться на библиотеку Big Faceless Graph ( BFG). Это - путь, легче использовать, чем JFreeChart, более хорошие взгляды, выполнения быстрее, больше произвел опции, действительно никакое сравнение.

0
ответ дан Jacob Rigby 23 November 2019 в 03:22
поделиться

Я не знаю, назвал ли я его готовым к производству, но существует jGABL.

4
ответ дан Hank Gay 23 November 2019 в 03:22
поделиться

JDSL (Библиотека структур данных в Java) должен быть достаточно хорошим, если Вы в алгоритмы графика - http://www.cs.brown.edu/cgc/jdsl/

7
ответ дан mr.sverrir 23 November 2019 в 03:22
поделиться

Для визуализации наша группа имела некоторый успех с предварительный предохранитель . Мы расширили его для обработки архитектурного floorplates и пузырькового схематического изображения, и это не жаловалось слишком много. У них есть новый инструментарий Flex также названная Вспышка, которая использует очень похожий API.

ОБНОВЛЕНИЕ: я должен был бы согласиться с комментарием, мы закончили тем, что писали большую пользовательскую функциональность/работу вокруг ограничений перед предохранителем. Я не могу сказать, что запуск с нуля был бы лучше хотя, когда мы смогли продемонстрировать прогресс со дня 1 при помощи предварительного предохранителя. С другой стороны, если бы мы делали вторую реализацию того же материала, я мог бы пропустить предварительный предохранитель, так как мы поняли бы требования намного лучше.

5
ответ дан Jacob Rigby 23 November 2019 в 03:22
поделиться

В университетском проекте я играл вокруг с yFiles yWorks и нашел, что это имело довольно хороший API.

10
ответ дан Turismo 23 November 2019 в 03:22
поделиться

JUNG является хорошим вариантом для визуализации, и также имеет довольно хороший набор доступных алгоритмов графика, включая несколько различных механизмов для случайного создания графика, перемонтажа, и т.д. Я также нашел, что он обычно довольно легок расшириться и адаптироваться в случае необходимости.

37
ответ дан Kai 23 November 2019 в 03:22
поделиться

Выезд JGraphT для очень простой и мощной библиотеки графика Java, которая вполне прилично сделана и, для смягчения любого беспорядка, , отличается, чем JGraph. [Приблизительно 112] пример кода :

UndirectedGraph<String, DefaultEdge> g =
        new SimpleGraph<String, DefaultEdge>(DefaultEdge.class);

    String v1 = "v1";
    String v2 = "v2";
    String v3 = "v3";
    String v4 = "v4";

    // add the vertices
    g.addVertex(v1);
    g.addVertex(v2);
    g.addVertex(v3);
    g.addVertex(v4);

    // add edges to create a circuit
    g.addEdge(v1, v2);
    g.addEdge(v2, v3);
    g.addEdge(v3, v4);
    g.addEdge(v4, v1);
40
ответ дан 3 revs, 3 users 94% 23 November 2019 в 03:22
поделиться

Резюме:

  • JGraphT , если вас больше интересуют структуры данных и алгоритмы.
  • JGraph , если ваша основная задача - визуализация.
  • Jung ], yWorks и BFG - это и другие вещи, которые люди пытались использовать.
  • Prefuse - нет, так как большую часть его приходится переписывать.
  • Google Guava , если вам нужны только хорошие структуры данных.
  • Apache Commons Graph . В настоящее время неактивен, но предоставляет реализации для многих алгоритмов. См. https://issues.apache.org/jira/browse/SANDBOX-458 для получения списка реализованных алгоритмов, также в сравнении с Jung, GraphT, Prefuse, jBPT
61
ответ дан 23 November 2019 в 03:22
поделиться

Попробуйте Annas - это пакет графов с открытым исходным кодом, который легко освоить с

http : //annas.googlecode.com

5
ответ дан 23 November 2019 в 03:22
поделиться

http://neo4j.org/ - это база данных графов, которая содержит множество алгоритмов графов и масштабируется лучше, чем большинство библиотек в памяти.

12
ответ дан 23 November 2019 в 03:22
поделиться

http://incubator.apache.org/hama/ - распределенный научный пакет на Hadoop для работы с массивными матричными и графовыми данными.

7
ответ дан 23 November 2019 в 03:22
поделиться

JGraph из http://mmengineer.blogspot.com/2009/10/java-graph-floyd-class.html

Предоставляет мощное программное обеспечение для работы с графиками ( прямой или непрямой). Также генерирует код Graphivz, вы можете видеть графические представления. Вы можете поместить в пакет свои собственные алгоритмы кода, например: код обратного отслеживания. В пакете есть несколько алгоритмов: Дейкстры, минимальная стоимость пути с возвратом и т. Д.

-1
ответ дан 23 November 2019 в 03:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: