aSa*_*Wow 14 diagram uml sequence-diagram graphviz plantuml
我使用以下代码创建了此图表.但是正如你所看到的,从(取消订单)和(下订单)到(发布者)的线路决定采用一条非常圆润的路径来获取它们,而不是直接向右转,然后向下发布.我尝试使用手动方向命令,如"-down",但它们似乎都没有帮助.有人知道如何解决这个问题吗?

这是我的代码.我感谢任何帮助.谢谢.
@startUML EBook Use Case Diagram
left to right direction
Actor Customer as customer
Actor EBook as ebook
Actor Publisher as publisher
rectangle "Book Catalogue" {
together {
Actor "Book Database" as bookLog
(Retrieve Information) as getBook
customer -- getBook
getBook -- ebook
getBook -- bookLog
(Update Catalogue) as updateCatalogue
ebook -- updateCatalogue
updateCatalogue -- bookLog
}
together {
(Place Order) as order
customer -- order
order -- ebook
order--publisher
(Cancel Order) as cancelOrder
customer -- cancelOrder
cancelOrder -- ebook
cancelOrder--publisher
}
}
(Ship To EBook) as shipEBook
shipEBook -- publisher
(Ship To Customer) as shipCustomer
customer -- shipCustomer
ebook -- shipEBook
shipCustomer -- ebook
(Return to EBook) as returnCustomer
(Returnto Publisher) as returnPublisher
customer -- returnCustomer
returnCustomer -- ebook
ebook -- returnPublisher
returnPublisher -- publisher
@endUML
Run Code Online (Sandbox Code Playgroud)
fkl*_*fer 18
要使布局中的连接不那么重要,请使用[norank],例如,a -[norank]-> b
Pet*_*nak 17
您可以尝试以下一些技巧。布局本身由GraphViz(点布局iirc)执行,而GraphViz有时只是这样做。图的布局是一个NP完全问题,因此算法通常会采用苛刻的捷径。
我见过或使用过的典型变通方法包括:
a -[hidden]- ba --- b(更多的破折号,更长的线)a -left- b)a -- b?b -- a)因此,如果您确实想要一个不错的布局,则需要在其中添加一些肘部润滑脂,但请记住,布局仍然会很脆弱-如果添加/删除项目,则可能需要再次重做。
Nik*_*hil 12
尝试使用@Peter Uhnak和linetype建议的选项:
skinparam linetype polyline
skinparam linetype ortho
Run Code Online (Sandbox Code Playgroud)
为行提供更好的选择。使用邻位-(在这里)
你会得到 -
aSa*_*Wow 11
如果有人想知道一个更具体的答案,可能给出更多无用的答案,这就是我最后所做的。
order -down- publisher
publisher -[hidden]up- order
Run Code Online (Sandbox Code Playgroud)
因此由于某种原因,两种方式都可以添加重复的命令来解决它。
| 归档时间: |
|
| 查看次数: |
7537 次 |
| 最近记录: |