我正在尝试以DOT格式处理和渲染一些图形.我拥有的点文件很大(~300MB),它包含多个有向图
digraph 1 {...}
digraph 2 {...}
digraph 3 {...}
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
1.是否可以使用渲染只有1个有向图而不是整个图?
有什么东西dot -3 -Tps mygraph.dot -o out.ps只能渲染有关图3吗?
2.什么是最好的Python库来处理点格式?(其他语言也可以接受)
这里有两个我试过,但不够好
pydot它在导入后给我一个有向图列表,这很好,但它不处理" ".在节点名称中.例如,nd.nd [label="nd_node"]将失败
pygraphviz它确实处理".",但只在文件中给出多个图形定义时导入有向图1 :(
既然您已经拥有了dot,那么您还应该拥有gvpr一个图形处理工具。您可以使用简单的脚本打印第三个图表gvpr,如下所示:
BEGIN { int count = 0; }
BEG_G {
count = count + 1;
if(count == 3) {
write($G);
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以将其用作源过滤器:
cat mygraph.dot | gvpr -f thirdgraph.gv | dot -Tps -o out.ps
Run Code Online (Sandbox Code Playgroud)