如何对 PlantUML 序列图中的主题进行排序?

How to order the subjects in PlantUML sequence diagram?

我有一个 PlantUML 序列图,其中 AliceCecil 交换消息一次,然后仅与 Bob 进行通信。此流程导致主题按第一次互动的时间排序。

@startuml
Alice -> Cecil: hi
Cecil -> Alice: fu

Alice -> Bob: hi
Bob -> Alice : hello

Alice -> Bob: howdy?
Bob -> Alice: fine

Alice -> Bob: r u sure?
Bob -> Alice: ye
@enduml

它看起来很难看 - 我想避免显示 AliceBob 超过 Cecil.

之间的交互

如何确保主题的自定义顺序,即 Alice - Bob - Cecil?

我找到了。只需使用关键字 participant。生成的参与者的顺序遵循他们定义的顺序。或者,可以明确定义顺序 (participant Alice order 1).

来源:UML Sequence Diagram: Participants

@startuml
participant Alice
participant Bob
participant Cecil

Alice -> Cecil: hi
Cecil -> Alice: fu
Alice -> Bob: hi
Bob -> Alice : hello
Alice -> Bob: howdy?
Bob -> Alice: fine
Alice -> Bob: r u sure?
Bob -> Alice: ye
@enduml