2012-04-12 75 views
4

圖形(拓撲類型)是否有常用的標記語言?我希望XMLelements如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

有一個名爲DotML的DOT的XML編碼版本,我用它來準備XSLT規範中的圖表。 – 2012-04-12 08:47:21

+1

對不起 - 編輯此項是錯誤的,然後刪除我的添加 – 2012-04-12 09:33:07

1

不是XML意義上的標記,但可以使用Dot語言。像graphviz這樣的程序將採用點輸出並將其變成一個漂亮的圖形。正如評論中指出的那樣,還有DotML

如果你想要基於XML,然後GraphML,DGMLGXL存在,但我從來沒有遇到過它們在實際應用中!

+1

有一個DOT的XML編碼版本稱爲DotML,我用它在XSLT規範中準備圖表。 – 2012-04-12 08:47:26

+0

@MichaelKay謝謝,以前沒見過。編輯答案添加它。 – 2012-04-12 08:50:28

2

使用GraphML描述變體的一個有用工具是yEd(http://www.yworks.com/en/products_yed_about.html)。我用它來可視化簡單圖形。這是標記語言恕我直言更像是XML。他們有一個庫在你的應用程序中使用,但我從來沒有使用它。