6

Is there a commonly used markup language for graphs (the topological kind). I would expect XMLelements such as Node and Edge and attributes showing directionality and labels

UPDATE: So far there is a choice of 2, GraphML and DotML. GraphML hasn't changed since 2007 but maybe it doesn't need to! SO readers may wish to know what toolsets each have - I am encouraged that Gephi uses GrahML, and obviously DotML has the GraphViz and other toolsets. (I shall be writing a limited toolkit in Java for whichever language I choose)

UPDATE: I am personally going with DotML. I need the language for modelling (e.g. adding labels, weights, etc. to nodes and edges so will need my own additional namespace). The attraction of DotML is that it seems to be active, and that graphViz can make use of the output. YMMV

4

3 に答える 3

6

Dot language is the main language I've used for graphs.

This language is used by systems such as GraphViz to generate its graphs and is fairly human readable.

Here's the graphviz DOT language reference.

As an aside note, I wrote a .NET GraphViz wrapper that can be used to parse DOT strings and output graphs. If that's something of use to you then you can grab the code from CodePlex: http://graphviz.codeplex.com/

于 2012-04-12T08:03:47.770 に答える
2

GraphML 記述のバリアントを使用する便利なツールは、yEd (http://www.yworks.com/en/products_yed_about.html) です。簡単なグラフを視覚化するために使用しました。それはマークアップ言語であり、IMHO は XML に似ています。アプリケーションで使用するライブラリがありますが、私は使用したことがありません。

于 2012-04-12T09:45:08.423 に答える
1

XMLの意味でのマークアップではありませんが、Dot言語を使用できます。graphvizのようなプログラムは、ドット出力を受け取り、それをきれいなグラフに変換します。コメントで指摘されているように、DotMLもあります。

XMLベースが必要な場合は、GraphMLDGML、およびGXLが存在しますが、実際のアプリケーションでそれらに遭遇したことはありません。

于 2012-04-12T08:05:05.973 に答える