neato
neato — разумный инструмент по умолчанию для не слишком больших неориентированных графов (около 100 узлов), если вам ничего больше не известно о графе.
neato пытается минимизировать глобальную функцию энергии, что эквивалентно статистическому многомерному шкалированию.
Решение достигается с помощью мажоризации напряжений1, однако также доступен более старый алгоритм Камада — Каваи2, использующий метод наискорейшего спуска; для этого нужно изменить mode.
- Руководство в формате PDF
- Руководство пользователя (обратите внимание: оно не учитывает последние возможности Graphviz)
- Просмотреть код
- Галерея
Атрибуты для функций neato
- Damping – Коэффициент затухания движений под действием силы. Допустим для: графов.
- defaultdist – Расстояние между узлами в отдельных связных компонентах. Допустим для: графов.
- dim – Задает число измерений, используемых для раскладки. Допустим для: графов.
- dimen – Задает число измерений, используемых для отображения. Допустим для: графов.
- diredgeconstraints – Определяет, следует ли ограничивать направление большинства ребер вниз. Допустим для: графов.
- epsilon – Условие завершения. Допустим для: графов.
- esep – Отступ вокруг многоугольников, используемый при прокладке сплайновых ребер. Допустим для: графов.
- inputscale – Масштабирует входные позиции для преобразования между единицами длины. Допустим для: графов.
- len – Предпочтительная длина ребра в дюймах. Допустим для: ребер.
- levelsgap – Строгость ограничений уровней neato. Допустим для: графов.
- maxiter – Задает число используемых итераций. Допустим для: графов.
- mode – Метод оптимизации раскладки. Допустим для: графов.
- model – Определяет способ вычисления матрицы расстояний для входного графа. Допустим для: графов.
- normalize – Нормализует координаты итоговой раскладки. Допустим для: графов.
- notranslate – Определяет, следует ли избегать переноса раскладки в начало координат. Допустим для: графов.
- overlap – Определяет, нужно ли устранять перекрытие узлов и каким образом. Допустим для: графов.
- overlap_scaling – Масштабирует раскладку с заданным коэффициентом, чтобы уменьшить перекрытие узлов. Допустим для: графов.
- pin – Фиксирует узел в заданной для него входной позиции. Допустим для: узлов.
- pos – Позиция узла или контрольные точки сплайна. Допустим для: ребер, узлов.
- scale – Масштабирует раскладку с заданным коэффициентом после первоначального размещения. Допустим для: графов.
- sep – Отступ вокруг узлов при устранении их перекрытия. Допустим для: графов.
- start – Параметр, используемый для определения начального размещения узлов. Допустим для: графов.
- voro_margin – Настройка отступа для метода Вороного. Допустим для: графов.
-
Gansner, E. R., Koren, Y., North, S. (2005). Построение графов методом мажоризации напряжений. В: Pach, J. (ред.) Построение графов. GD 2004. Конспекты лекций по информатике, т. 3383. Springer, Берлин, Гейдельберг. ↩︎
-
Tomihisa Kamada, Satoru Kawai, Алгоритм построения общих неориентированных графов, Information Processing Letters, том 31, выпуск 1, 1989, страницы 7–15. ↩︎
© 2025 The Graphviz Authors
Licensed under the Eclipse Public License 1.0.
https://www.graphviz.org/docs/layouts/neato/