библиотека графика для [закрытого] scala

31
задан Elazar Leibovich 14 March 2010 в 21:40
поделиться

2 ответа

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

Вот простой пример создания графа:

implicit val factory = DefaultEdge[String](_, _)
val G = Graph(
  "Entry" -> "A",
  "A" -> "B",
  "B" -> "C",
  "B" -> "D",
  "D" -> "F",
  "F" -> "E",
  "E" -> "F",
  "E" -> "C",
  "C" -> "A",
  "C" -> "Exit")
G.dotExport to Console.out

Поиск SCC и подкомпонентов

G.sccs foreach println
G.sccs map { _.entry } foreach println
G.sccs filter { _.canSearch } map { _.subcomponents } foreach { _ foreach println }

Обход

for(x <- G.topsort) println(x)
for(x <- G.dft(y)) println(x)

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

8
ответ дан 27 November 2019 в 22:38
поделиться

Почему не Jung ? и также Piccolo2D для графики? (оба основаны на JVM).

4
ответ дан 27 November 2019 в 22:38
поделиться
Другие вопросы по тегам:

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