编辑:我正要提交时找到了答案。这篇文章讨论了不可见的边缘:Graphviz 从上到下和从左到右
我目前正在使用 python 包“diagrams”为我的项目构建流程图。不幸的是,由于从左到右或从上到下的所有方向,它会导致一些丑陋的显示(据我所知,无法混合两者)。
这是我的图表代码的片段:
from diagrams import Diagram, Cluster
from diagrams.generic.database import SQL
from diagrams.generic.place import Datacenter
from diagrams.generic.compute import Rack
from diagrams.generic.network import Subnet
from diagrams.aws.general import User
with Diagram('Sample', show=False, outformat='png', direction='LR'):
database_1 = SQL('Database 1')
database_2 = SQL('Database 2')
database_3 = SQL('Database 3')
server = Datacenter('Datacenter')
human = User('Human Reviewer')
with Cluster('Additional items to group separately', direction='TB'):
process = Subnet('Connection')
compute = Rack('Compute')
compute_other = Rack('Compute Other')
with Cluster('Files to group together'):
database_4 = SQL('Database 4')
database_5 = SQL('Database 5')
database_6 = SQL('Database 6')
[database_4, database_5, database_6] >> compute
database_1 >> server
database_2 >> server
database_3 >> server
server >> process >> compute >> compute_other >> human
但所需的图像将是簇
'Files to group together'
水平分布以使图表更加紧凑的图像。请参阅此图了解所需的输出。
有没有一种方法可以水平对齐集群
'Files to group together'
,同时仍然让图表的其余部分从左到右流动?我想我只需要在集群中的项目之间创建不可见的边缘,但我似乎无法在 graphviz 中找到将边缘设置为不可见的选项(并且似乎没有独特的选项graphviz 中没有的图表)。
注意:我尝试了 Edge(color=None),但您仍然可以看到一个箭头,并且没有从 db4 到 db5 再到 db6 的流程,因此 Edge 只是尝试强制对齐
是否有更好的软件包可用于构建这些图表?
谢谢!
搜索时找不到类似的帖子,但是AI大神看了我的帖子,并指出这篇帖子是置顶建议: Graphviz 从上到下和从左到右
在那篇文章中,用户提到了 Edge 的 graphviz 选项(style='invis')。我实现了它,而不是我在 Edge(color=None) 的尝试,并且按预期工作。
你可以用代码发布你的答案吗?