用graphviz dot来画UML类图
其实我是看了这篇文章,我跟着做了,发现他最终做的效果还没有我的好。把我的代码贴出来,其实基本上就是用rank=same:
digraph G {nodesep=0.8;node [ fontname="Bitstream Vera Sans", fontsize=8, shape="record" ]edge [fontsize=8arrowhead="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 -> AnimalCat -> Animaledge [arrowhead = "none"headlabel = "0..*"taillabel = "0..*"]Dog -> Cat}效果:
