GraphML (.graphml)
予備知識
-
- GraphMLグラフデータ形式.
- グラフの標準交換.
- GraphMLはGraph Markup Languageから派生した頭字語である.
- XMLベースの形式.
- 型付き,属性付き,有向・無向グラフを表す.
- ネストしたグラフ,ハイパーグラフも保管できる.
- ユーザ定義の辺,頂点のタイプをサポートする.
- 2001年にGraphML開発グループにより提案された.
ImportとExport
- Import["file.graphml"]は指定のファイルに保管された,単独のGraphオブジェクトあるいはグラフのリストとして与えられたグラフをインポートする.
- Export["file.graphml",expr]は1つまたは複数のグラフの隣接行列あるいは辺情報をGraphML形式にエキスポートする.
- Import["file.graphml",elem]は指定された要素をGraphMLファイルからインポートする.
- Import["file.graphml",{elem,suba,subb,…}]は子要素をインポートする.
- Import["file.graphml",{{elem1,elem2,…}}]は複数の要素をインポートする.
- インポートの形式はImport["file","GraphML"]あるいはImport["file",{"GraphML",elem,…}]で指定することができる.
- Export["file.graphml",expr,elem]は expr が要素 elem を指定するものとして扱って,GraphMLファイルを作成する.
- Export["file.graphml",{expr1,expr2,…},{{elem1,elem2,…}}]はそれぞれの expri が対応する elemi を指定するものとして扱う.
- Export["file.graphml",expr,opt1->val1,…]は指定されたオプションの要素が指定された値を取るものとして expr をエキスポートする.
- Export["file.graphml",{elem1->expr1,elem2->expr2,…},"Rules"]は規則を使ってエキスポートされるべき要素を指定する.
- 一般的な情報は,以下の関数ページを参照のこと.
-
Import, Export ファイルからインポートする,あるいはファイルへエキスポートする CloudImport, CloudExport クラウドオブジェクトからインポートする,あるいはクラウドオブジェクトへエキスポートする ImportString, ExportString 文字列からインポートする,あるいは文字列へエキスポートする ImportByteArray, ExportByteArray バイト配列からインポートする,あるいはバイト配列へエキスポートする
Import要素
- 一般的なImport 要素:
-
"Elements" ファイル中の有効な要素とオプションのリスト "Summary" ファイルの概要 "Rules" 使用可能なすべての要素の規則のリスト - データ表現要素:
-
"AdjacencyMatrix" 辺情報(行列のリストとして与えられる) "EdgeAttributes" 辺属性(規則のリストとして表示される) "EdgeLabels" 辺ラベルを表す文字列のリスト "EdgeRules" すべてのグラフの結合性データ(規則の配列として与えられる) "Graph" ファイルに保管された最初のグラフ(Graphオブジェクトとして与えられる) "Graphics" このファイルに保持された最初のグラフ(グラフプロットとして描画される) "GraphicsList" グラフィックスオブジェクトのリストとして与えられる全グラフ "GraphList" Graphオブジェクトのリストとして与えられる,ファイルに保管された全グラフ "VertexAttributes" 頂点の属性(規則のリストとして表示される) "VertexCount" それぞれのグラフの頂点の数(整数のリストとして与えられる) "VertexList" 頂点(文字列のリストとして与えられる) - Importは単純なGraphMLファイルには"Graph"を,複数のグラフのGraphMLファイルには"GraphList"をデフォルトで使用する.
- 複数のグラフを含むGraphMLファイルの要素指定:
-
"GraphNames" 文字列のリストで与えられるグラフ名 elem,"name" "name"で指定されるグラフの要素 elem elem,n このファイルの n 番目のグラフのデータ表現要素 elem elem,{n1,n2,…} グラフ n1, n2, …の要素 elem elem,All リストで与えられる,全グラフに対する要素 elem
オプション
- 一般的なImportオプション:
-
ImageSize Automatic グラフを表示する画像の全体的な大きさを指定する - GraphMLからインポートする際は,Graphがサポートするすべてのオプションを与えることができる.一般的な設定を示す:
-
EdgeLabels Automatic 辺に対するラベルとラベルの配置 EdgeWeight Automatic 辺の重み VertexCoordinates Automatic 頂点に対する中心座標 VertexLabels Automatic 頂点に対するラベルとラベルの配置 VertexShape Automatic 頂点のグラフィックスの形状 - "Graphics"をインポートする際は,GraphPlotがサポートするすべてのオプションを与えることができる.一般的な設定は次の通りである:
-
DirectedEdges Automatic 辺を有向矢印で示すかどうか EdgeLabels Automatic 辺に与えられたラベルを含むかどうか EdgeShapeFunction Automatic 辺に明示的なグラフィックスを与える関数 VertexLabels Automatic 頂点名をラベルとして示すかどうか VertexShapeFunction Automatic 頂点に明示的なグラフィックスを与える関数 - Graphオブジェクトからエキスポートする際,Wolfram言語のグラフ属性値はしばしばCompressを使って文字列としてエキスポートされる.