我正在创建一个包含多个集群的图表。属于同一簇的节点之间有边缘,属于不同簇的节点之间有边缘。我正在使用fdp布局。对于集群中的节点是否有一种边缘路由,对于属于不同集群的节点是否有另一种边缘路由?
例如,我想对前者使用splines=ortho,对后者使用splines=compound。我试过这样做,但是生成的图似乎只使用主图中指定的splines值。
发布于 2020-07-02 04:44:59
我很确定这不能用一个pass -样条是一个图形级别的属性。然而,我认为这可以用5关技术来完成:
通过< file
E 122pythonE 223?)编辑输入clusterfdp -Tdot -Gsplines=ortho (适用于all),以添加节点和边缘路由H 119运行步骤1输出。to
H 143通过E 144gvpr>gvpr>e 245(或E 146python>E 247?)将keeppos!="")
呼!听起来很恶心,但似乎很管用
附注:步骤3和步骤5需要-s选项来解决缩放问题。
p.p.s.因为需要固定节点,所以仅使用fdp和neato (不是dot)。
下面是一个命令行:
f=multispline.gv;
F=`basename $f .gv`
fdp -Gsplines=true -Tdot $f |
gvpr -c 'N{pin="true"}E[keep=="1"]{keeppos=$.pos}'|
fdp -s -Gsplines=ortho -Tdot |
gvpr -c 'E[keeppos!=""]{pos=keeppos}' |
neato -s -n2 -Tsvg >oo.svghttps://stackoverflow.com/questions/62687030
复制相似问题