Выполняя разработку программного обеспечения, я периодически сталкиваюсь с необходимостью рисовать некоторые графики для собственного использования. Иногда они иллюстрируют отношения в БД, иногда они иллюстрируют отношения файлов кода или классов, иногда бывают другие объекты ... Во всяком случае, основная потребность такая же - у меня есть набор узлов & ребер, которые мне бы хотелось аккуратно выкладывать, добавлять некоторые информативные цвета/тексты/стили и, при необходимости, распечатывать их в конце (при необходимости, на нескольких страницах).Какие хорошие графические макеты, инструменты для редактирования и рисования есть?
Есть ли инструмент, который позволил бы мне сделать это легко? Возможности, которые я ожидал бы:
- Импортировать базовую информацию о узле/крае из файла (необработанные данные, которые я извлек из БД/кода/независимо);
- Автоматическая компоновка некоторых или всех узлов на графике;
- Позволяет вручную настраивать места размещения узлов и краев;
- Функции манипуляции с группами узлов (релейный выход, поворот, масштаб) также были бы очень приятными;
- Умение манипулировать визуальными аспектами изображения - менять линии, цвета и шрифты; добавлять произвольные тексты и изображения (возможно, прикрепляя их к узлам/ребрам);
- Возможность изменения содержимого узла (иногда мне нужен простой текст, иногда это небольшая таблица, иногда это маркированный список и т. Д.)
- Сохранение/загрузка/печать (в том числе на несколько страниц с перекрывающимися областями для склеивания вместе)/экспорт в изображение (как векторный, так и растровый с сглаживанием).
Добавлено:Here образец графа Я пытался представить себе совсем недавно. Я хотел бы получить полезный макет, который требует минимальной настройки, прежде чем его можно будет распечатать.
Хороший ответ и вопрос, это действительно полезно ... Мне очень нравится макет второго, слишком красивый! –
Я просто попробовал их на небольшом графике зависимостей PHP-файлов (в какой файл входит файл). Было что-то вроде 130 файлов (из которых половина была независимой) и вокруг того же количества зависимостей. Graphviz практически выровнял их все, создавая чрезвычайно широкий/высокий график. yEd было немного лучше, но все равно даже не приблизилось к чему-либо полезному. Я бы ожидал чего-то лучшего. –
Я думаю, что yEd имеет разные типы макета, может быть, попробуйте несколько? – Mau