我使用graphviz绘制有向图。现在的事情是,虽然我能够正确生成图形,但图形是水平设计的,不符合我的要求。那么,我怎样才能垂直绘制有向图 请帮帮我这个
答案 0 :(得分:18)
给出以下脚本,我从问题的评论中提取并编辑,以通过删除一些无关的分号使其成功运行:
digraph G {
graph [ bgcolor=lightgray, resolution=128, fontname=Arial, fontcolor=blue, fontsize=10 ];
node [ fontname=Arial, fontcolor=blue, fontsize=10];
edge [ fontname=Helvetica, fontcolor=red, fontsize=10 ];
"arunachaltourism.com/" -> "webcomindia.biz/profile.php";
"arunachaltourism.com/#" -> "arunachaltourism.com/";
"arunachaltourism.com/aalo.php" -> "arunachaltourism.com/";
}
我调用了脚本x.dot
。现在,运行:
dot x.dot -Tjpg -o x.jpg
...生产:
...因为默认值为rankdir=BT
。插入:
rankdir=LR
...作为脚本的第二行并再次通过dot
运行脚本:
因此,我不清楚为什么图形可能是第一次水平绘制,但您将能够看到使用rankdir
如何使图形水平或垂直绘制。
答案 1 :(得分:10)
(老问题,但为什么不呢!)
你也可以运行:
dot -Grankdir=LR -Tpng myfile.dot -ogeneratedpng.png
答案 2 :(得分:1)
您可以在点文件中使用rankdir
作为属性:
digraph G {
rankdir=LR; //left to right
//B bottom T top L left R right
start->a1;
a1 -> b3;
b2 -> a3;
a3 -> a0;
a3 -> end;
b3 -> end;
}
该脚本从左到右生成以下图表:
您可以尝试脚本online