Алгоритмы рисования графа - я пытаюсь сделать автомат конечного состояния - PullRequest
8 голосов
/ 06 февраля 2009

Я хочу написать что-то, что будет рисовать конечные автоматы. Кто-нибудь знает какие-нибудь алгоритмы, связанные с этим?

РЕДАКТИРОВАТЬ: я должен упомянуть, что я знаю о графвизе. Я хочу создать свою собственную программу / функцию рисования, так что мне нужно больше теоретического материала / псевдокода для алгоритмов.

Ответы [ 4 ]

13 голосов
/ 06 февраля 2009

Рисование графиков является довольно сложным предметом, поскольку разные графики нужно рисовать по-разному - нет единого алгоритма, подходящего для всех подходов.

Могу ли я предложить следующий ресурс:

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

5 голосов
/ 06 февраля 2009

Чтобы начать работу с алгоритмами рисования графиков, см. Эту знаменитую статью:

Описывает алгоритм, используемый dot, программой для рисования graphviz. На связанной странице вы найдете еще много ссылок. Вы также найдете еще несколько статей, когда поищете в Google «рисование ориентированных графиков».

Кроме того, вы можете найти OpenFst удобным, общим инструментарием для машин с конечным числом состояний. Он имеет двоичный файл с именем fstdraw , который выводит конечный автомат в формате, который может быть прочитан с помощью dot.

2 голосов
/ 17 августа 2010

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

http://www.cs.brown.edu/~rt/gdhandbook/

2 голосов
/ 06 февраля 2009

Выезд Графвиз . Это программное обеспечение для визуализации графов с открытым исходным кодом.

РЕДАКТИРОВАТЬ: Проверьте раздел документации , который ссылается на некоторые из используемых алгоритмов макета.

...