graph - Plantuml 组件图 - 布局控制

标签 graph uml plantuml

我正在尝试使用 Plantuml 组件图构建“硬件架构”图,但我正在努力解决布局问题。

我的图表变得非常复杂,我注意到 Plantuml 不断从左到右添加框架,使图表水平增长。

例如从这个代码

@startuml

' -----------------------------------------------------
skinparam defaultTextAlignment center
' -----------------------------------------------------
top to bottom direction


frame Pippo as pippo {

frame "Pippo Deploy" {
node "xxx1\nfoo" <<windows 7>>
}

frame "Pippo Core" {

node "===xxx2\nbar" <<amiga>> 
node "===xxx2\nbar" <<amiga>>
node "===xxx3\nbar" <<amiga>>
node "===xxx4\nbar" <<amiga>>
node "===xxx5\nbar" <<amiga>>
node "===xxx6\nbar" <<amiga>>
node "===xxx7\nbar" <<amiga>>

}

frame "Pippo Additional Servers" {

node "===xxx8\nfoo" <<windows 7>> 
node "===xxx9\nfoo" <<windows 7>>
node "===xxx10\nfoo" <<windows 7>>
node "===xxx11\nfoo" <<windows 7>>
node "===xxx12\nfoo" <<windows 7>>
node "===xxx13\nbar" <<amiga>>
}

frame "Pippo other"  {
node "===xxx14\nfoo" <<windows server 2003>>
}

}

frame "Pluto" as pluto {

frame "Pluto 1" {

node "===xxx15\nfoo" <<windows server 2012>>
node "===xxx16\nfoo" <<windows 7>>
node "===xxx17\nbar" <<amiga>>

}

frame "Pluto 2" {

node "===xxx18\nfoo" <<windows server 2003>>
node "===xxx19\nfoo" <<windows 7>>
node "===xxx20\nfoo" <<windows 7>>
}


}

pippo --[hidden]> pluto


@enduml

我得到这个图 enter image description here

我希望在“Pippo”框架下放置“Pluto”框架

看到我已经使用了隐藏链接和 top to bottom direction ,试图强制这种布局,但没有结果。

最佳答案

这个怎么样:

更换 top to bottom directionleft to right direction并评论 pippo --[hidden]> pluto给我这个:

enter image description here

完整代码:

@startuml

' -----------------------------------------------------
skinparam defaultTextAlignment center
' -----------------------------------------------------
'top to bottom direction
left to right direction

frame Pippo as pippo {

frame "Pippo Deploy" {
node "xxx1\nfoo" <<windows 7>>
}

frame "Pippo Core" {

node "===xxx2\nbar" <<amiga>> 
node "===xxx2\nbar" <<amiga>>
node "===xxx3\nbar" <<amiga>>
node "===xxx4\nbar" <<amiga>>
node "===xxx5\nbar" <<amiga>>
node "===xxx6\nbar" <<amiga>>
node "===xxx7\nbar" <<amiga>>

}

frame "Pippo Additional Servers" {

node "===xxx8\nfoo" <<windows 7>> 
node "===xxx9\nfoo" <<windows 7>>
node "===xxx10\nfoo" <<windows 7>>
node "===xxx11\nfoo" <<windows 7>>
node "===xxx12\nfoo" <<windows 7>>
node "===xxx13\nbar" <<amiga>>
}

frame "Pippo other"  {
node "===xxx14\nfoo" <<windows server 2003>>
}

}

frame "Pluto" as pluto {

frame "Pluto 1" {

node "===xxx15\nfoo" <<windows server 2012>>
node "===xxx16\nfoo" <<windows 7>>
node "===xxx17\nbar" <<amiga>>

}

frame "Pluto 2" {

node "===xxx18\nfoo" <<windows server 2003>>
node "===xxx19\nfoo" <<windows 7>>
node "===xxx20\nfoo" <<windows 7>>
}


}

'pippo --[hidden]> pluto


@enduml

关于graph - Plantuml 组件图 - 布局控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49945174/

相关文章:

python - 为什么线性最短路径算法对无向循环图不起作用?

plantuml - PlantUML 中的行距

documentation-generation - 如何在PlantUML中生成带有颜色的图例?

在 C 中创建 X-Y 绘图

c++ - boost 图 : dijkstra_shortest_paths: cannot form a reference to 'void'

python - :Python incidence matrix - How to remove Vertex?

uml - 如何在 gliffy 中向 UML 对象添加构造型?

java - 如何解析Java代码生成类图?

architecture - 什么是用例场景?

PlantUML:泳道和重叠连接器