使用 Graphviz 绘画 UML 图使用 Graphviz 绘画 UML 图 Milo Yip 2019/10/28 目录 1 简介 2 1.1 使用 Graphviz dot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 类图 4 2.1 继承 . . . . . . . . . . . . . . . . . . . . . 16 3 状态图 18 4 参考 19 1 Chapter 1 简介 本文为开放文档,可在 GitHub 提交 issue / PR。本文的 PDF 版本可在 在此下 载。 Graphviz 是 AT&T 实验室开发的一个开源软件,它以一种文本语言去描述图(graph),然后 自动排布节点和边去生成图片。它已有近 30 年历史。 UML(unified modeling 象设计的方法。其中 最常用的是类图(class diagram),用于表示类的构成以及类之间的关系。 利用 Graphviz 去生成 UML 类图有几个好处: 1. 用文本表示图,容易更新,容易做版本管理。 2. 能自动排布节点位置,在大型复杂的图特别方便。 3. 统一文档风格。 实际上,文档生成工具Doxygen 也是采用 Graphviz 生成类图的。不过,我们在软件设计中, 经0 码力 | 20 页 | 331.51 KB | 1 年前3
Drawing UML with PlantUML - PlantUML Language Reference Guide(Version 1.2020.23)Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2020.23) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Activity diagram • State diagram • Object diagram • Deployment diagram • Timing diagram The following non-UML diagrams are also supported: • JSON Data • Wireframe graphical interface • Archimate diagram • : hello Alice -> Bob : ok @enduml [Ref. QA-2794] 1.36.3 style strictuml To be conform to strict UML (for arrow style: emits triangle rather than sharp arrowheads), you can use: • skinparam style strictuml0 码力 | 311 页 | 3.15 MB | 1 年前3
Drawing UML with PlantUML - PlantUML Language Reference Guide(Version 1.2019.4)Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2019.4) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Activity diagram • State diagram • Object diagram • Deployment diagram • Timing diagram The following non-UML diagrams are also supported: • Wireframe graphical interface • Archimate diagram • Specification Interface2 <- [Component] @enduml PlantUML Language Reference Guide (1.2019.4) 79 / 166 6.7 Use UML2 notation 6 COMPONENT DIAGRAM It is also possible to change arrow direction by adding left, right0 码力 | 167 页 | 1.83 MB | 1 年前3
Drawing UML with PlantUML - PlantUML Language Reference Guide(Version 1.2019.9)Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2019.9) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Activity diagram • State diagram • Object diagram • Deployment diagram • Timing diagram The following non-UML diagrams are also supported: • Wireframe graphical interface • Archimate diagram • Specification Interface2 <- [Component] @enduml PlantUML Language Reference Guide (1.2019.9) 80 / 174 6.7 Use UML2 notation 6 COMPONENT DIAGRAM It is also possible to change arrow direction by adding left, right0 码力 | 175 页 | 1.95 MB | 1 年前3
Drawing UML with PlantUML - PlantUML Language Reference Guide(Version 1.2019.3)Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2019.3) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Activity diagram • State diagram • Object diagram • Deployment diagram • Timing diagram The following non-UML diagrams are also supported: • Wireframe graphical interface • Archimate diagram • Specification Interface2 <- [Component] @enduml PlantUML Language Reference Guide (1.2019.3) 79 / 158 6.7 Use UML2 notation 6 COMPONENT DIAGRAM It is also possible to change arrow direction by adding left, right0 码力 | 159 页 | 1.73 MB | 1 年前3
Drawing UML with PlantUML - PlantUML Language Reference Guide(Version 1.2023.11)Drawing UML with PlantUML PlantUML Language Reference Guide (Version 1.2023.11) PlantUML is a component that allows to quickly write : • Sequence diagram • Usecase diagram • Class diagram • Object diagram • Component diagram • Deployment diagram • State diagram • Timing diagram The following non-UML diagrams are also supported: • JSON Data • YAML Data • Network diagram (nwdiag) • Wireframe graphical : hello Alice -> Bob : ok @enduml [Ref. QA-2794] 1.39.3 style strictuml To be conform to strict UML (for arrow style: emits triangle rather than sharp arrowheads), you can use: • skinparam style strictuml0 码力 | 551 页 | 7.79 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2021.2)使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2021.2) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 对象图 • 活动图 • 组件图 • 部署图 • 状态图 • 定时图 同时还支持以下非 UML 图: • JSON Data • YAML Data • Network diagram Relationship diagram 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用-> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml 用户 -> 认证中心: 登录操作 Foo5 collections Foo6 Foo1 -> Foo2 : To boundary PlantUML 语言参考指引 (1.2021.2) 1 / 380 1.2 声明参与者 1 时序图 Foo1 -> Foo3 : To control Foo1 -> Foo4 : To entity Foo1 -> Foo5 : To database Foo1 -> Foo6 : To collections0 码力 | 381 页 | 4.05 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.6)使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.6) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice -> Bob: Authentication database Foo1 -> Foo6 : To collections @enduml PlantUML 语言参考指引 (1.2019.6) 1 / 173 1.2 声明参与者 1 时序图 关键字 as 用于重命名参与者 你可以使用 RGB 值或者颜色名修改 actor 或参与者的背景颜色。 @startuml actor Bob #red ' The only difference0 码力 | 174 页 | 1.98 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.9)使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.9) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice -> Bob: Authentication database Foo1 -> Foo6 : To collections @enduml PlantUML 语言参考指引 (1.2019.9) 1 / 173 1.2 声明参与者 1 时序图 关键字 as 用于重命名参与者 你可以使用 RGB 值或者颜色名修改 actor 或参与者的背景颜色。 @startuml actor Bob #red ' The only difference0 码力 | 174 页 | 2.00 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.1)使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.1) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice -> Bob: Authentication database Foo1 -> Foo6 : To collections @enduml PlantUML 语言参考指引 (1.2019.1) 1 / 145 1.2 声明参与者 1 时序图 关键字 as 用于重命名参与者 你可以使用 RGB 值或者颜色名修改 actor 或参与者的背景颜色。 @startuml actor Bob #red ' The only difference0 码力 | 146 页 | 1.91 MB | 1 年前3
共 98 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10













