You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PlantUML ER图布局调整:控制实体位置与设置元素间距

PlantUML ER图布局优化方案

控制实体摆放位置的方法

  • 关联指定方向:定义实体关系时添加up/down/left/right方向关键字,强制两个实体的相对位置,比如将Должность }|..|| Воронка改为Должность }|..|| up Воронка,即可将Воронка实体固定在Должность的上方。
  • 隐藏连线对齐:无关联的实体需要对齐时,可添加Воронка -[hidden]-> Гражданство这类隐藏连线,强制两个实体保持水平/垂直对齐关系。
  • 分组锁定区域:使用together { }代码块包裹需要排布在同一区域的实体,PlantUML渲染时不会将块内实体拆分到不同区域。

调整元素间距的方法

  • 全局间距配置:在代码开头添加skinparam参数调整全局间距规则:
' 调整同层级实体的最小水平间距
skinparam nodesep 40
' 调整不同层级实体的最小垂直间距
skinparam ranksep 60
' 调整连线与多重度标识的距离
skinparam edgeLabelSpacing 20
' 调整实体边框与内部文本的内边距
skinparam entity { padding 15 }
  • 单条连线拉长:仅个别连线出现重叠时,可在关系定义中添加/拉长对应连线,添加的斜杠越多连线越长,示例:Должность ||..o{ / Должность_Гражданство。

优化后示例代码

@startuml
' 基础样式设置
hide circle
skinparam linetype ortho

' 间距配置
skinparam nodesep 45
skinparam ranksep 60
skinparam edgeLabelSpacing 15
skinparam entity {
    padding 12
}

entity Воронка{
  ID <<PK>>
  Наименование
}

entity Должность{
  ID <<PK>>
  Код должности
  Наименование
  ID Воронки <<FK, UNIQUE>>
}

' 字典实体分组
together {
entity Гражданство{
  ID <<PK>>
  Наименование
}

entity Регион{
  ID <<PK>>
  Наименование
}

entity Образование{
  ID <<PK>>
  Наименование
}

entity Языки{
  ID <<PK>>
  Наименование
}

entity "Опыт работы"{
  ID <<PK>>
  Наименование
}

entity "Тип занятости"{
  ID <<PK>>
  Наименование 
}
}

' 关联表分组
together {
entity Похожие_должности{
  ID Должности
  ID Похожей должности
}

entity Должность_Гражданство{
  ID Должности <<FK>>
  ID Гражданства <<FK>>
}

entity Должность_Регион{
  ID Должности <<FK>>
  ID Региона <<FK>>
}

entity Должность_Языки{
  ID Должности <<FK>>
  ID Языка <<FK>>
}

entity Должность_Опыт_работы{
  ID Должности <<FK>>
  ID Опыт работы <<FK>>
}

entity Должность_Тип_занятости{
  ID Должности <<FK>>
  ID Типа занятости <<FK>>
}

entity Должность_Образование{
  ID Должности <<FK>>
  ID Образования <<FK>>
}
}

' 带方向的关系定义
Должность }|..|| up Воронка
Должность ||..|{ down Похожие_должности

Должность ||..o{ right Должность_Гражданство
Гражданство ||..o{ down Должность_Гражданство

Должность ||..o{ right Должность_Регион
Регион ||..o{ down Должность_Регион

Должность ||..o{ right Должность_Образование
Образование ||..o{ down Должность_Образование

Должность ||..o{ right Должность_Языки
Языки ||..o{ down Должность_Языки

Должность ||..o{ right Должность_Опыт_работы
"Опыт работы" ||..o{ down Должность_Опыт_работы

Должность ||..o{ right Должность_Тип_занятости
"Тип занятости" ||..o{ down Должность_Тип_занятости
@enduml

内容的提问来源于stack exchange,提问作者AlexF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 07:30:01