2012-04-12 4 views
4

Существует ли обычно используемый язык разметки для графиков (топологический вид). Я бы ожидал, что XML-элементы, такие как Node и Edge, и атрибуты, показывающие направленность и меткиесть язык разметки для графиков?

UPDATE: Пока существует выбор из 2, GraphML и DotML. GraphML не изменился с 2007 года, но, возможно, это не нужно! Читатели SO могут захотеть узнать, какие у них есть инструменты - я убежден, что Gephi использует GrahML, и, очевидно, DotML имеет GraphViz и другие инструменты. (Я напишу ограниченный набор инструментов на Java в зависимости от того, какой язык я выбираю)

ОБНОВЛЕНИЕ: Я лично собираюсь с DotML. Мне нужен язык для моделирования (например, добавление меток, весов и т. Д. К узлам и ребрам, для чего потребуется мое собственное дополнительное пространство имен). Привлекательность DotML заключается в том, что он кажется активным, и что GraphViz может использовать выход. YMMV

ответ

5

Dot language - основной язык, который я использовал для графиков.

Этот язык используется системами, такими как GraphViz, для генерации своих графиков и является достаточно читабельным для человека.

Вот graphviz DOT language reference.

Как примечание, я написал оболочку .NET GraphViz, которая может использоваться для анализа строк DOT и выходных графиков. Если это вам что-то полезно, вы можете получить код от CodePlex: http://graphviz.codeplex.com/

+0

Существует XML-кодированная версия DOT под названием DotML, которую я использую для подготовки диаграмм в спецификации XSLT. –

+1

Извините, отредактировав эту запись по ошибке, а затем удалил мои добавления. –

1

Не разметка в смысле XML, но вы можете использовать язык Dot. Такие программы, как graphviz, получат вывод Dot и превратят его в красивый граф. Как отмечается в комментариях, существует также DotML.

Если вы хотите использовать XML, то GraphML, DGML и GXL существуют, но я никогда не сталкивался с ними в практических приложениях!

+1

Существует XML-кодированная версия DOT под названием DotML, которую я использую для подготовки диаграмм в спецификации XSLT. –

+0

@MichaelKay Спасибо, раньше не видел. Отредактировал ответ, чтобы добавить его. –

2

Полезным инструментом, использующим вариант описания GraphML, является yEd (http://www.yworks.com/en/products_yed_about.html). Я использовал его для визуализации простых графиков. Это язык разметки IMHO больше похож на XML. У них есть библиотека для использования в ваших приложениях, но я никогда не использовал ее.

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