遷移は 1 本の矢印です。矢印のあとのコロンが、それを起こすイベントです。
stateDiagram-v2
[*] --> Idle
Idle --> Running : start
Running --> Idle : stop同じ [*] の印が両方を受け持ちます。それへ向かう矢印が終端、そこから出る矢印が開始です。
stateDiagram-v2
[*] --> Draft
Draft --> Published
Published --> [*]問いかけるひし形です。出る矢印 1 本が答え 1 つです。
stateDiagram-v2
[*] --> Check
Check --> Decide <<choice>>
Decide --> Accepted : if valid
Decide --> Rejected : if invalid波括弧は複合状態を開きます。その内部の状態はその中にいます。
stateDiagram-v2
[*] --> Active
state Active {
[*] --> NumLockOff
NumLockOff --> NumLockOn : press
NumLockOn --> NumLockOff : press
}
Active --> [*]フォークは流れを分割し、ジョインはすべての分岐がそろうまで待ちます。
stateDiagram-v2
[*] --> Split <<fork>>
Split --> A
Split --> B
A --> Merge <<join>>
B --> Merge
Merge --> [*]ノートは 1 つの状態に付けます。2 つにまたがって浮かせることもできます。
stateDiagram-v2
[*] --> Draft
Draft --> Review
note right of Draft
Still editable
end noteフローチャートと同じキーワードです。既定は上から下です。
stateDiagram-v2
direction LR
[*] --> Idle
Idle --> Running : start