经验丰富但不是 Graphviz 专家。
我分享的示例代码和图像是更大图表的一部分,我将其拉出来以使问题和示例更清晰。
该图是按等级分开的并且从左到右流动。在图像示例中,您可以看到三个等级和节点空间很好,但我想在子图中收紧它们。
我已经尝试了六种语法选项,但它们都不允许我缩小子图中节点之间的垂直距离,而其他地方则不允许。
不确定如何将节点隔离到子图集群。
感谢您的任何帮助。
digraph G {
graph [rankdir=LR, ranksep=.8, nodesep=.25];
edge [dir=forward, color=black];
node [shape=rectangle, fontsize=12, fontname="Times-Roman", height=.45];
{edge [color=firebrick1] v_Automobile ->{"Locational"; "Consumption"; "Governmental"};};
{edge [color=blue2] v_Body ->{"BioMetric"; "Networked IoT"; "Medical"};};
{edge [color=darkviolet] v_Citizen ->{"Associative"; "Conversaional"; "Governmental"; "Political"};};
{edge [color=lightskyblue] v_Consumer ->{"Consumption"; "Educational"; "Employment"; "Governmental"; "Locational"; "Medical"; "Transactional"};};
{edge [color=crimson] v_Home ->{"Consumption"; "Emanative"; "Locational"; "Networked IoT"};};
{edge [color=blue2] "BioMetric" ->{SP_Camera; SP_Apps; "CCTV"};};
{edge [color=crimson] "Consumption" ->"Smart Meter"};
{edge [color=blue2] "Medical" ->SP_Apps};
{edge [color=darkviolet] "Political" ->"Ballot"};
{edge [color=lightskyblue] "Transactional" ->{SP_Browser; SP_Apps; "Reward Cards"; "Paypoint"};};
subgraph cluster_SmartPhone {label = "Smart Phone";
dirType=none;
SP_Apps;
SP_Browser;
SP_Camera;
SP_GPS};
SP_Apps [label="Apps",
height=.40,
color=black];
SP_Browser [label="Browser",
color=black];
SP_Camera [label="Camera",
color=black];
SP_GPS [label="GPS",
color=black];
v_Automobile [label="Automobile",
penwidth=2,
color=firebrick1];
v_Body [label="Body",
penwidth=2,
color=blue2];
v_Citizen [label="Citizen",
penwidth=2,
color=darkviolet];
v_Consumer [label="Consumer",
penwidth=2,
color=lightskyblue];
v_Home [label="Home",
penwidth=2,
color=crimson];
}