当前位置:   article > 正文

python 矩形树图_Python Graphviz 的使用-绘制树形图 | 文艺数学君

学习完本任务之后,请归纳如何使用python绘制矩形树图。

摘要本文会介绍使用 Graphviz 来绘制树形图。同时介绍使用 Python 中的 graphviz 来简单 Graphviz 的使用。

简介

Graphviz 是一个绘图工具,可以根据 dot 脚本画出树形图等。本文会介绍 graphviz 的简单使用,使用 graphviz 来创建 dot 文件来绘制树形图。本文还会通过几个 graphviz 的例子,来介绍 graphviz 的使用。

参考资料

Graphviz 的中文文档,Graphviz 中文文档

Dot 语言介绍(想要更多了解的时候可以查看),Graphviz Dot 语言介绍

Python Graphviz 的入门文档,Graphviz User Guide

Python Graphviz 的 Example 介绍,Graphviz 的例子

Graphviz 的简单介绍

Graphviz 编译的源文件是 dot 文件。我们通过书写 dot 文件,来获得不同的树状图。首先需要安装 Graphviz,可以通过下面的链接进行安装,Graphviz Download。关于 Graphviz 的说明,可以参考这个链接,有详细的例子解释,Graphviz 中文文档。

绘制简单树形图

我们将如下代码保存为 graph01.dot 文件:

digraph G {

main -> parse -> execute;

main -> init;

main -> cleanup;

execute -> make_string;

execute -> printf;

execute -> compare;

}

接着使用命令 dot -Tjpg ./awesome_project/graph.dot -o graph01.jpg 编译,可以得到名为 graph01.jpg 的图片,图片内容如下所示。

绘制更加复杂的树形图

上面是一个简单的树状图的绘制,下面我们来看一个稍微复杂的情况,有以下的几个需求:

给 node 和 edge 添加格式,颜色,加粗,是否虚线;

支持中文,在 node 上指定 fontname 即可,fontname="Microsoft Yahei"

指定箭头的方向,这里在连接部分使用 dir=none, dir=both, dir=forward, dir=back;

我们直接看一下最终的代码:

digraph G {

main [shape=box];

main -> parse [weight=8];

parse-> execute;

main -> init [style=dotted, dir = none];

main -> cleanup [dir = both];

execute -> {make_string, printf};

init -> make_string;

edge [color=red];

main -> printf [style=bold, label="100 times"];

make_string [label = "make a\nstring"];

node [shape=box, style=filled,color=".7, .3, 1.0", fontname="Microsoft Yahei"];

execute -> 比较;

}

最终的效果如下所示:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/169560
推荐阅读
相关标签
  

闽ICP备14008679号