Выкладывая большой граф с графикой
Мои дочери сделали игру, в отличие от tic-tac-toe. Конечно, когда я играл с ними, я начал грубо заставлять его в моей голове...
Итак, в обеденный перерыв я сделал маленький маленький Python script, чтобы "решить" игру. И я хотел увидеть результаты графически, поэтому я создал точечный файл всех юридических ходов:
Я вставлял данные здесь.
Когда я пытаюсь выполнить рендеринг с помощью dot
, он берет навсегда, и я прерываю его через несколько часов.
Если я создаю его с помощью neato
или sfdp
и т.д., это занимает несколько секунд или меньше, но макет невозможно прочитать:
sfdp -x -Tpng data.dot > data.png
![sfdp]()
neato -x -Tpng data.dot > data.png
![neato]()
Я был бы счастлив, если бы получилось изображение в несколько мегапикселей.
Как я могу выложить и отобразить такой большой график? Я открыт для предложений без точек, таких как библиотеки Python, которые также могут выполнять макет.
(несколько связанная ссылка)
Добавлено: мой Python script, чтобы решить игру и сгенерировать dot файл
Ответы
Ответ 1
Попробуйте следующее:
sfdp -x -Goverlap=scale -Tpng data.dot > data.png
-Goverlap
сохраняет макет, но равномерно масштабирует вещи до тех пор, пока не будет больше перекрытий node. Я смог получить PNG размером 77 Мбайт, который выглядит так, когда вы уменьшаете масштаб.
![enter image description here]()
Ответ 2
вы все равно можете использовать neato, но измените файл .dot: [splines = true overlap = false]
И ваш файл должен выглядеть так:
digraph luffarschack {
graph [splines=true overlap=false];
node [shape=none];
...here your nodes;
...here your edges;
}
Он должен работать, если вы просто поместите во вторую строку "graph [splines = true overlap = false]", а все остальное останется прежним.
Ответ 3
В дополнение к другим ответам вы можете использовать другие инструменты, такие как Gephi.
Gephi - это ведущее программное обеспечение для визуализации и разведки для всех видов графиков и сетей. Gephi является открытым и бесплатным.
Работает в Windows, Mac OS X и Linux.