2013-06-10 2 views
4

Скажем, у меня есть ориентированный граф G, где каждый узел представляет некоторый набор, который у меня есть. Существует ребро от u до v, если u является подмножеством v. Этот график является транзитивным и ацикличным. Существует ряд исходных узлов (те, которые не содержат ни одного из других узлов), и один приемник (большой «обратный» набор, содержащий объединение всех остальных.). Другими словами, этот график является транзитивной ориентацией comparability graph.Могу ли я автоматически генерировать диаграмму Эйлера (Venn) из графика сдерживания

Что я хочу знать, могу ли я автоматически создать красивую диаграмму Эйлера с этого графика?

Euler diagram как диаграмма Венна, но вам не нужно показывать каждую комбинацию перекрытия между наборами.

Примером может служить то вроде этого (взято из википедии):

enter image description here

Я уверен, что я мог бы сделать диаграммы, как это вручную, но я имею дело с большими наборами данных , что я будет постоянно добавляться, поэтому я хотел бы автоматизировать процесс. Обратите внимание, что относительный размер диаграмм для меня не важен, только то, пересекаются ли две области, являются взаимно исключающими или если один содержится в другом.

Существуют ли алгоритмы, инструменты или библиотеки, которые позволяют мне это делать?

Обратите внимание, что я задал аналогичный вопрос here, но большинство моих ответов было то, что LaTeX просто не подходит для этой работы. Таким образом, я спрашиваю об этом здесь.

+0

Если я правильно понимаю, диаграмма Эйлера по существу является неполной диаграммой Венна. Некоторые пересечения считаются несущественными и отбрасываются. У вас есть критерий, чтобы решить, какие пересечения неважны? В противном случае, как мог алгоритм знать? – mitchus

+0

Я думал, что пересечение двух множеств будет считаться пустым, если не указано иное, и пустые пересечения будут проигнорированы на диаграмме. – jmite

ответ

0

Возможно, вы нашли свое решение здесь: SageMath. Это очень мощный движок Math, позволяющий рисовать много диаграмм.

+0

Прохладный инструмент, любая идея или инструкции о том, как использовать его для рисования диаграммы Эйлера? – jmite

+0

К сожалению, я просто помог реализовать часть 'LaTeX' support, но вы должны найти ее довольно быстро! –

2

«Диаграммы Эйлера трудно рисовать автоматически, и целью этого проекта является создание первого метода для рисования всех диаграмм Эйлера». - от eulerdiagrams.com, но есть несколько ссылок.

Кроме этого, поиск Euler diagram generation, кажется, приносит некоторые результаты, такие как Vennerable. Но, судя по этому, 2008 paper, это все еще довольно активная область исследований.

Смежные вопросы