减小graphviz生成的graphics的大小(如面积)

有没有人有任何一般的技巧,以减lessgraphviz生成的graphics的大小(面积大小,而不是文件大小)。

我有一个相当大的图(700个节点)。 我为每个节点设置了较小的字体大小,但似乎只是减小了字体大小,而不是实际的节点大小。 有没有任何属性来减less图中的空白总量? 谢谢!

根据我的经验,使用graphviz来渲染这个尺寸的graphics(~700个节点),对这个属性设置的组合进行最小的反复调整 – 对于所有三个对象(graphics,节点和边缘)应该做你想要的:

通过“nodesep” 减less节点之间的最小间隔 。 例如节点[nodesep = 0.75] ; 这将使你的graphics“太紧凑”。 ( nodesepranksep可能比任何其他可调参数更能影响点画图

减less不同级别的节点之间的最小距离 ,例如节点[ranksep = 0.75] ; “ranksep”设置不同级别的节点之间的最小距离 – 如果graphics由许多行列组成,这会显着影响您的graphics布局

增加边权重 ,例如边[weight = 1.2] ; 这将使边更短,从而使整个graphics更紧凑

删除节点边界和节点填充 ,例如节点[color = none; 形状=明文] ,特别是对于椭圆形节点,总节点空间的大部分是“未使用”(即,不用于显示节点标签)。 现在每个节点的占用空间已经减less到仅仅是文本

明确地设置节点的字体大小 (节点边界被放大以便它们围绕节点文本,这意味着给定节点的字体大小和文本量对其大小有显着的影响)。 [fontsize = 11]应该足够清晰,同时也可以减less“混乱”的外观(默认大小为14)

节点和边缘使用不同的颜色 –这将使您的graphics更易于阅读; 例如,将节点“text”fontcolor设置为蓝色,将边缘fontcolor设置为“gray”,以帮助眼睛区分这两组graphics结构。 这会比你想象的要大得多。

明确地设置总的graphics大小 ,例如graph [size =“7.75,10.25”] (确保你的graphics适合8.5×11的页面,并占据整个空间)