1

Я хотел бы нарисовать детерминированный конечный автомат, который был создан из недетерминированного конечного автомата с помощью Graphviz. Для этого мне нужны метки типа "{q1, q2}". Когда я пытаюсь сделать это с DOT, я получаю следующую ошибку:

$ dot -Tpng dfsm.gv -o myDeterministicFiniteStateMachine.png
Error: dfsm.gv:4: syntax error near line 4
context: node [shape = doublecircle]; "{q2, >>>  f}", <<<  "{f}";

Есть ли способ получить фигурные скобки на этикетке Graphviz?

1 ответ1

1

Было бы полезно, если бы вы показали свой настоящий исходный код, потому что то, что вы пытаетесь сделать, должно работать нормально. В Graphviz нет никаких серьезных ограничений относительно того, какой текст вы можете разместить на ярлыке. Также нет серьезных ограничений на имена узлов; Конечно, если имя вашего узла содержит больше, чем просто буквенно-цифровые символы, вы должны заключить имя узла в кавычки. Простой пример:

digraph fsm {
  node [shape=doublecircle]
  "{q2, f}"
}

Графвизия рендеринга

Обратите внимание, что на сайте Graphviz есть пример fsm. Он не использует фигурные скобки в своих метках, но это может быть полезно, если вам нужна ссылка по другим причинам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .