如何使用Graphviz
发表于:2025-02-20 作者:千家信息网编辑
千家信息网最后更新 2025年02月20日,本篇内容主要讲解"如何使用Graphviz",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用Graphviz"吧!前期准备知识安装Graphviz第一
千家信息网最后更新 2025年02月20日如何使用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连接不了数据库
移动软件开发工程师好不好学
沧州科盛网络技术有限公司
sql2000数据库教程
软件开发主管工作重点
医院软件开发的公司
数据库有哪几种结构各有何特点
《网络安全法》原则性表述
三心网络技术员加班
网络安全靠人民顺口溜
无人机软件开发招聘
华为服务器报r01
学校网络安全工作责任制简报
公安局主管网络安全
违反网络安全法第48条的事件
着力提升网络安全防护和管理能力
软件开发管理思考
软件开发都是全日制的
晋城市常想网络技术有限公司
达梦数据库iso安装
手机查找设备显示无法连接服务器
贵州服务器散热器加工虚拟主机
国资控股的网络安全