GraphViz:压缩自动生成的图形

GraphViz:压缩自动生成的图形,graphviz,Graphviz,我试图将Excel文件的两列可视化:A列包含类别,B列包含单个条目。点文件由Excel使用以下公式生成: =IFERROR(CONCATENATE("subgraph cluster_",A2,"{""",B2,"""","; label =""",A2,"""}"),"") 然后使用“unflatten”实用程序更均匀地分布节点,最后使用“dot”生成图形 unflatten.exe -f -l 4 -c 6 -o FLATTENED.dot INPUTFILE.dot dot -Tpng

我试图将Excel文件的两列可视化:A列包含类别,B列包含单个条目。点文件由Excel使用以下公式生成:

=IFERROR(CONCATENATE("subgraph cluster_",A2,"{""",B2,"""","; label =""",A2,"""}"),"")
然后使用“unflatten”实用程序更均匀地分布节点,最后使用“dot”生成图形

unflatten.exe -f -l 4 -c 6 -o FLATTENED.dot INPUTFILE.dot
dot -Tpng FLATTENED.dot > FLATTENED.png
将生成

我想使图形更紧凑,并将类别与页面的上部egde对齐,我应该研究哪些命令来改进结果输出

我附上了

这里有一个想法:

  • 创建一个包含x个图形的点文件,而不是包含x个簇的一个图形
  • 给他们松绑
  • 然后使用
    gvpack
    将所有图形打包在一起
  • 和neato布局
基本思想是使用图形而不是集群,这样您就可以使用
gvpack
来打包图形

比如:

unflatten -f -l 4 -c 6 input.dot | dot | gvpack -array_t6 | neato -s -n2 -Tpng -o output.png
不确定unflatten是否处理带有多个图形的文件


(抱歉,没有时间检查)。

谢谢,您的方法对我的问题非常有用。