用graphviz dot来画UML类图

本文分享了一种使用Graphviz创建UML类图的方法,并提供了一个示例代码及生成的效果图。通过设置nodesep和使用rank=same属性,可以实现良好的布局效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其实我是看了[url=http://www.ffnn.nl/pages/articles/media/uml-diagrams-using-graphviz-dot.php]这篇文章[/url],我跟着做了,发现他最终做的效果还没有我的好。把我的代码贴出来,其实基本上就是用rank=same:

[code]
digraph G {
nodesep=0.8;
node [ fontname="Bitstream Vera Sans", fontsize=8, shape="record" ]
edge [
fontsize=8
arrowhead="empty"
]

Animal [
label = "{Animal|+ name: String\l+ age: Integer\l|+ die(): void\l}"
]

subgraph clusterAnimalImpl {
label="Package animal.impl"
Dog [
label = "{Dog||+ bark(): void\l}"
]

Cat [
label = "{Cat||+ meow(): void\l}"
]
{ rank=same; Dog; Cat }
}

Dog -> Animal
Cat -> Animal

edge [
arrowhead = "none"
headlabel = "0..*"
taillabel = "0..*"
]
Dog -> Cat
}
[/code]

效果:
[img]http://marlonyao.iteye.com/upload/picture/pic/80692/ceea378c-af5c-3144-9c60-7a794e78406b.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值