什么是graphviz?
Graphviz是一款开源的图形可视化工具,用于生成各种结构化数据的图形表示。它支持多种图形排列算法,可以将复杂的数据关系用图形的方式直观地展示出来。Graphviz广泛应用于软件工程、数据可视化、计算机网络以及其他领域的可视化分析中。它的主要特点包括易用性、灵活性和高度可定制性。用户可以通过简单的文本描述来定义图形,然后使用Graphviz生成对应的图形表示,从而方便地进行数据分析和可视化工作。
About | Graphviz
下载编译版本graphiz
Download | Graphviz
https://gitlab.com/api/v4/projects/4207231/packages/generic/graphviz-releases/9.0.0/windows_10_cmake_Release_graphviz-install-9.0.0-win64.exe
安装Windows版本的graphviz
点击“安装”,等待完成即可。
检查是否安装成功
Win键+R 打开运行 输出 cmd
输入"dot --version"
出现下面的界面说明安装成功,会显示你的版本号,可以通过"where dot"检查你安装的位置。
使用jupyter-lab来验证graphviz是否可用
激活jupyter-lab对应的conda虚拟环境,通过pip命令安装python的graphviz依赖包:
pip install graphviz
如何安装conda和创建虚拟环境,可以阅读:
[Python] conda、anaconda、miniconda的关系,miniconda安装,conda命令使用_conda和anaconda mini-CSDN博客
如何安装Jupyter-Lab, 可以阅读:[Python] Jupyter Notebook(Jupyter Lab)介绍,安装,配置,启动及创建第一个notebook_python 启动jupyter lab-CSDN博客
安装完之后,启动jupyter-lab, 然后创建一个测试的Notebook,把下面的python代码复制到cell中,并运行单元格:
from graphviz import Digraph
grap_g = Digraph("G",format="jpg")
sub_g0 = Digraph(comment="process1",graph_attr={"style":'filled',"color":'lightgrey'},node_attr={"style":"filled","color":"red"})
sub_g0.node("a0","a0")
sub_g0.node("a1","a1")
sub_g0.node("a2","a2")
sub_g0.node("a3","a3")
sub_g0.edge("a0","a1")
sub_g0.edge("a1","a2")
sub_g0.edge("a2","a3")
sub_g0.edge("a3", "a0")sub_g1 = Digraph(comment="process1",graph_attr={"style":'filled'})
sub_g1.node("B","b0")
sub_g1.node("C","b1")
sub_g1.node("D","b2")
sub_g1.node("E","b3")
sub_g1.edges(["BC","CD","DE"])grap_g.node(
"start", label="start",shape="Mdiamond")
grap_g.node(
"end", label="end", shape="Mdiamond")grap_g.subgraph(sub_g0)
grap_g.subgraph(sub_g1)
grap_g.edge("start","a0")
grap_g.edge("start","B")grap_g.edge("a1","E")
grap_g.edge("D","a3")grap_g.edge("a3","end")
grap_g.edge("E","end")grap_g.render('test-table2.gv', view=True)from graphviz import Digraphg = Digraph('测试图片', format='jpg')
g.node(name='a',color='red')
g.node(name='b',color='blue')
g.edge('a','b',color='green')
g.view()
生成后,会用你的操作系统默认的图片浏览器直接打开生成的流程图: