【发布时间】:2011-01-20 22:33:55
【问题描述】:
如何更改点(graphviz)中边缘的大小? 我想让一些边缘“加粗”。
【问题讨论】:
如何更改点(graphviz)中边缘的大小? 我想让一些边缘“加粗”。
【问题讨论】:
我想补充舒瓦洛夫的回答。 penwidth 确实是正确的命令。此外,在 shuvalov 的回答中,penwidth 是 both 一个节点和一个边缘属性——也是正确的。
我想做出的区分:
penwidth,当用作节点时 属性(例如,“NodeA”[penwidth = 5]) 影响边界线的粗细 对于那个节点
penwidth,当用作边缘时 属性影响线宽 边缘(默认值为“1”, 指定 penwidth=2 将使 边缘出现在粗体类型
如果要更改线宽 的优势,你不需要改变 penwidth 用于两个节点 由该边缘连接(如 shuvalev 的 答案可能会建议)
对于有向图(边有 一个方向)您可能还希望更改 箭头的尺寸/重量和 arrowtail,以及边缘 权重,所以三个都保持 比例
边的长度可以改变 通过将 weight 属性设置为 其他地方,默认值为 1.0; 增加该值会增加 期间拉伸该边缘的成本 渲染(即绘图 算法将更高的惩罚应用于 该边缘的解决方案 更长);注意从 1 开始的边缘 到 4 比从 1 的边短 到 2.
以下代码应说明所有这些。渲染图如下代码所示。
digraph {
/* declare the node & style them */
"Node 1" [shape=diamond, penwidth=3, style=filled, fillcolor="#FCD975"];
"Node 2" [style=filled,fillcolor="#9ACEEB" ];
"Node 3" [shape=diamond, style=filled, fillcolor="#FCD975" ];
"Node 4" [style=filled, fillcolor="#9ACEEB" ]
/* declare the edges & style them */
"Node 1" -> "Node 2" [dir=none, weight=1, penwidth=3] ;
"Node 1" -> "Node 3" [dir=none, color="#9ACEEB"] ;
"Node 1" -> "Node 4" [arrowsize=.5, weight=2.]
}
【讨论】:
weight 属性对我没有任何改变。其余的非常有帮助,不过……谢谢!
试试这个:
"NodeA" [ penwidth = 5]
"NodeB" [ penwidth = 5]
NodeA->NodeB [ penwidth = 3]
【讨论】: