これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して OnWorks 無料ホスティング プロバイダーで実行できるコマンド graph-easyp です。
プログラム:
NAME
graph-easy - さまざまな形式でグラフをレンダリング/変換する
SYNOPSIS
グラフ形式とレイアウト/レンダリング グラフ間の変換:
グラフイージー [オプション] [入力ファイル [出力ファイル]]
echo "[ボン] - 車 -> [ベルリン]" | グラフイージー
グラフ簡単 --input=graph.dot --as_ascii
グラフ簡単 --html --output=mygraph.html graph.txt
グラフ簡単graph.txt graph.svg
グラフ簡単graph.txt --as_dot | dot -Tpng -o graph.png
グラフ簡単graph.txt --png
グラフ簡単なgraph.vcg --dot
グラフ簡単なgraph.dot --gdl
グラフ簡単なgraph.dot --graphml
議論
最も重要なオプションは次のとおりです。その他のオプションは完全なドキュメントに記載されています。
--help この短い概要だけでなく、完全なドキュメントを印刷します。
--input 入力ファイル名を指定します。 例:
グラフ簡単 --input=input.txt
フォーマットは自動検出され、--from で上書きされます。
--output 出力ファイル名を指定します。 例:
グラフ簡単 --output=output.txt input.txt
--as 出力形式を指定します。 例:
グラフ簡単 --as=ascii input.txt
有効な形式は次のとおりです。
アスキー アスキー アート レンダリング
boxart Unicode Boxart レンダリング
HTML HTML
svg スケーラブル ベクター グラフィックス
Graphviz DOT 言語
「graphviz」のドットエイリアス
txt グラフ::簡単なテキスト
vcg VCG (Visualizing Compiler Graphs - GDL のサブセット) テキスト
gdl GDL (グラフ記述言語) テキスト
GraphML グラフML
さらに、次の形式が理解され、プログラムを通じてパイプ処理されます。
--renderer オプションで指定 (デフォルト: ドット):
bmp Windows ビットマップ
GIFGIF
hpgl HP-GL/2 ベクター グラフィック
jpg JPEG
pcl PCL プリンター言語
PDF PDF
PNG
ps追記
PDF 表記の ps2 Postscript (graphviz のドキュメントを参照)
tga Targa ビットマップ
tif TIFF ビットマップ
デフォルトの形式は、出力ファイル名の拡張子によって決まります。
出力ファイル名が設定されていない場合は「ascii」。
使用することもできます ONE 「--as_ascii」または「--ascii」の形式の引数。
--from 入力形式を指定します。 有効な形式は次のとおりです。
Graphviz DOT 言語
txt グラフ::簡単なテキスト
vcg VCG テキスト
gdl GDL (グラフ記述言語) テキスト
指定しない場合、入力形式は自動検出されます。
使用することもできます ONE 「--from_dot」などの形式の引数。
--レンダラー
次のような出力形式をレンダリングするために使用される外部プログラム (デフォルト: "ドット")
「png」、「jpg」など。「neato」、「twopi」、「fdp」、「circo」などの選択肢があります。
--parse 入力のみが解析され、出力は生成されません。 組み合わせて便利
「--debug=1」または「--stats」で。 例:
グラフ簡単 input.txt --parse --debug=1
--stats 入力グラフに関するさまざまな統計を STDERR に書き込みます。 で最もよく使用されます
「--parse」との組み合わせ:
グラフ簡単なinput.txt --parse --stats
--timeout タイムアウトを設定します in 秒 ASCII を生成する Graph::Easy レイアウタの場合、
HTML、SVG、またはボックスアートの出力。 この時間内にレイアウトが終了しない場合は、
中絶されます。 例:
グラフ簡単input.txt --timeout=500
DOT、VCG/GDL、GraphML、またはプレーン テキストへの変換では、タイムアウトは無視されます。
デフォルトは 240 秒 (4 分) です。
--verbose 変換プロセスに関する情報を STDERR に書き込みます。
DESCRIPTION
「graph-easy」は、グラフの記述を読み取ります (ノードとエッジの接続されたネットワークであり、
円グラフ :-) 次に、これを目的の出力形式に変換します。
デフォルトでは、入力は STDIN から読み取られ、出力は STDOUT に送られます。 入力
は UTF-8 でエンコードされることが想定されているため、出力も UTF-8 になります。
次の形式を入力として認識します。
グラフ::簡単 http://bloodgate.com/perl/graph/manual/
DOT http://www.graphviz.org/
VCG http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
GDL http://www.aisee.com/
入力ファイル名に関係なく、フォーマットは自動的に検出されますが、
また、入力が XNUMX つの特定の形式であることを明示的に宣言します。
出力は、次のいずれかの形式のグラフのダンプです。
グラフ::簡単 http://bloodgate.com/perl/graph/manual/
DOT http://www.graphviz.org/
VCG http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
GDL http://www.aisee.com/
グラフML http://graphml.graphdrawing.org/
また、「Graph::Easy」は以下のいずれかでグラフのレイアウトを作成することもできます
出力フォーマット:
HTML SVG アスキー ボックスアート
SVG 出力の場合、モジュール Graph::Easy::As_svg を最初にインストールする必要があることに注意してください。
ショートカットとして、出力形式を「png」として指定することもできます。これにより、
「graph-easy」は、graphviz 形式の入力を「dot」プログラムにパイプして PNG を作成します
ワンステップでファイル。 次の XNUMX つの例は同等です。
グラフ簡単graph.txt --dot | dot -Tpng -o graph.png
グラフ簡単graph.txt --png
その他 議論
「graph-easy」は、上記の引数に加えて、さらにいくつかの引数をサポートしています。
--version バージョン情報を書き込んで終了します。
--debug=N デバッグ レベル (1..3) を設定します。 警告、これにより大量のハードウェアが生成されます
STDERR の出力を理解する。 例:
グラフ簡単なinput.txt --output=test.html --debug=1
--png、--dot、--vcg、--gdl、--txt、--ascii、--boxart、--html、--svg
これらのオプションの XNUMX つだけを指定すると、目的の出力形式が生成されます。
例
ASCII 出力
echo "[ボン] -- 車 --> [ベルリン], [ウルム]" | グラフイージー
+--------+ 車 +-----+
| | ボン | ボン | -----> | ウルム |
+--------+ +-----+
|
| | 車
v
+--------+
| | ベルリン |
+--------+
グラフビズ 例 出力
echo "[ボン] -- 車 --> [ベルリン], [ウルム]" | グラフ簡単 --dot
ダイグラフ GRAPH_0 {
エッジ [ 矢じり = オープン ];
グラフ [rankdir=LR];
ノード [
フォントサイズ=11,
塗りつぶし色=白、
スタイル=塗りつぶし、
形状=ボックス];
ボン -> ウルム [ label=car ]
ボン -> ベルリン [ label=car ]
}
VCG 例 出力
echo "[ボン] -- 車 --> [ベルリン], [ウルム]" | グラフ簡単 --vcg
グラフ: {
タイトル:「無題グラフ」
ノード: { タイトル: "ベルリン" }
node: { title: "ボン" }
ノード: { タイトル: "ウルム" }
edge: { label: "car" sourcename: "Bonn" targetname: "Ulm" }
edge: { label: "car" sourcename: "Bonn" targetname: "Berlin" }
}
GDL 例 出力
GDL (グラフ記述言語) は VCG のスーパーセットであるため、出力は次のようになります。
VCGとほぼ同じ:
echo "[ボン] -- 車 --> [ベルリン], [ウルム]" | グラフ簡単 --gdl
グラフ: {
タイトル:「無題グラフ」
ノード: { タイトル: "ベルリン" }
node: { title: "ボン" }
ノード: { タイトル: "ウルム" }
edge: { label: "car" source: "Bonn" target: "Ulm" }
edge: { label: "車" source: "ボン" target: "ベルリン" }
}
グラフML 例 出力
GraphML は XML です。
echo "[ボン] -- 車 --> [ベルリン], [ウルム]" | グラフ簡単 --graphml
<graphml xmlns="http://graphml.graphdrawing.org/xmlns"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns
http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
車
車
警告
ある形式から別の形式に 100% 変換することは不可能であることに注意してください。
そこにあるすべてのグラフ言語には、この言語だけに固有の機能があります。
さらに、変換プロセスは常に最初に入力を Graph::Easy に変換します。
グラフを選択し、目的の出力形式に変更します。
これは、Graph::Easy で実際に有効な機能と属性のみが有効であることを意味します。
まだサポートされていません。 Graph::Easy をユニバーサル フォーマットにする作業
可能性はまだ進行中です。
Graph::Easy でまだネイティブにサポートされていない属性はカスタムに変換されます
プレフィックス「x-format-」、fi「x-dot-」が付いた属性。 同じフォーマットに出力すると、
これらは元に変換されますが、別の形式に変換するとこれらの属性が失われます。
まだ残っている問題のリストについては、"Graph::Easy" の TODO ファイルを参照してください。
CPAN での配布:
<http://search.cpan.org/~tels/Graph-Easy/>
何か間違ったことや属性の欠落に気付いた場合は、バグレポートを提出してください
<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Easy>
それを修正して、不足しているものを Graph::Easy に含めることができます。
onworks.net サービスを使用して、graph-easyp オンラインを使用する