如何使用Graphviz
发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,本篇内容主要讲解"如何使用Graphviz",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用Graphviz"吧!前期准备知识安装Graphviz第一
千家信息网最后更新 2025年02月16日如何使用Graphviz
本篇内容主要讲解"如何使用Graphviz",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用Graphviz"吧!
前期准备知识
安装Graphviz
第一步:Graphviz官网安装graphviz(可下载.msi和免安装版),下载后将bin目录配置到环境变量Path中
第二步:命令行安装graphviz,这个模块给出了很多的python接口去使用Graphviz软件
pip install graphviz
python-graphviz
是什么?
官网 文档
==简介==:Graphviz是AT&T Labs Research开发的开源图形可视化软件。图形可视化是一种将结构信息表示为抽象图形和网络图的方式。它在网络,生物信息学,软件工程,数据库和网页设计,机器学习以及其他技术领域的可视界面中具有重要的应用。
==特征==:Graphviz布局程序以简单的文本语言获取图形的描述,并以有用的格式制作图表,例如用于网页的图像和SVG;PDF或Postscript,以包含在其他文档中;或在交互式图形浏览器中显示。Graphviz具有用于具体图表的许多有用功能,例如颜色,字体,表格节点布局,线条样式,超链接和自定义形状的选项。
使用原理: graphviz实际是一种绘图工具,可以根据dot脚本来画出树形图,==我们可以利用python代码生成dot脚本==,然后调用graphviz来解析脚本,生成一张图片.
dot脚本语言:是开源工具包Graphviz上用来画图的一门脚本语言,语法非常简单,官方文档也只有8页。
案例
案例一:
from graphviz import Digraphdot = Digraph(comment='The Test Table')# 给dot脚本语言加注释#----------创建结点语句----# 添加圆点A,A的标签是Dot Adot.node('A', 'Dot A')# 添加圆点 B, B的标签是Dot Bdot.node('B', 'Dot B')# 添加圆点 C, C的标签是Dot Cdot.node(name='C', label= 'Dot C',color='red')#----------创建边的语句-----(两种方式)# 创建一堆边,即连接AB的两条边,连接AC的一条边。dot.edges(['AB', 'AC'])# 在创建两圆点之间创建一条边dot.edge('B', 'C', 'test')#--------观看原dot语言的表达形式-----# 获取DOT source源码的字符串形式,如图一print(dot.source)#--------显示图像的-----------#dot.view() 直接显示,使用Digraph.gv默认名dot.render('test-table.gv', view=True)# 设置图片名,以及直接显示
dot脚本原语:
案例二:
from graphviz import Digraphsub_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 = Digraph("G",format="pdf")grap_g.node("start", label="start",shape="Mdiamond")grap_g.node("end", label="end", shape="Mdiamond")grap_g.subgraph(sub_g0) #将sub_g0和sub_g0 的Digraph加入到grap_g的Digraph中,方便一次显示grap_g.subgraph(sub_g0)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.view()#grap_g.render('test-table2.gv', view=True)
到此,相信大家对"如何使用Graphviz"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
脚本
图形
语言
圆点
文档
标签
案例
软件
学习
信息
内容
图像
图片
图表
实际
工具
布局
形式
方式
有用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全电子版教材
如果管理网站的服务器
上海 棋牌软件开发公司
济南博赛网络技术
网络安全法知识试卷
网络安全的攻与防论文
公安局网络安全覆盖
深圳市乔木网络技术有限公司
天津网络技术人员的工资
智能终端软件开发设计报告
数据库sql什么字符加引号
如何保障web服务器的安全
公共信息网络安全检查查询
形容那个网络技术的新词语
云主机服务器管理系统
网络安全技术有哪几个分支
远程管理服务器的利器
曝谷歌有意收购网络安全公司
自动化测试和软件开发哪个难
美国防御服务器
信息开发工程师和软件开发工程师
吉祥棋牌软件开发得多少钱
db2如何切换数据库
数据库怎么查询最小年龄
不履行网络安全保护义务罪
开网络软件开发公司
河南网络安全宣传日
校园网宽带服务器名称或地址
卡管家软件开发
海康威视服务器无法识别硬盘