PyGraphviz 安装使用
因为要用到一些树的图形,所以搜索到了 PyGraphviz 这个绘图工具。PyGraphviz 是对 Graphviz 的封装,提供了 Python 接口的调用。Graphviz 是一个开源软件包,提供了对图、点、边的简易操作,所以封装后的 PyGraphviz 可以很容易用来绘制想要的图形。
下面是 Windows 系统下具体安装过程:
1. 安装 python
- 选择 python 版本并下载,这里示例使用的是 python 3.4.4,msi 格式的文件。 python下载链接
- 安装 python 并添加安装目录到系统变量中的 Path 中,同时添加 Scripts 目录到 Path 中。以便于后续使用 python.exe 和 pip.exe 两个执行文件。
2. 安装 Graphviz
- 下载 Graphviz 安装包并安装,这里示例使用的是 Graphviz2.38,Graphviz下载链接
- 安装后添加安装目录下 bin 目录到系统 Path 中,以便后续使用 dot.exe 文件
3. 安装 PyGraphviz
- 下载 PyGraphviz 并安装,这里示例使用的是 PyGraphviz 1.3.1-cp34 版本,其中 cp34 表示 python 版本是 3.4,PyGraphviz下载链接
- pip 安装下载后的 whl 文件
pip install pygraphviz-1.3.1-cp34-none-win_amd64.whl
4. PyGraphviz 使用
import pygraphviz as pyg g=pyg.AGraph() #建立图 g.add_node('A') #建立点 g.add_edge('A','B') #建立边 g.add_edge('A','C') #建立边 g.layout(prog='dot') #绘图类型 g.draw('pyg1.png') #绘制
绘制结果:
PyGraphviz 对于图、点和边的设置,如颜色、样式、形状等属性,分别提供有 graph_attr、node_attr 和 edge_attr 属性设置函数。
以上步骤中请注意 Graphviz 安装完成后,记得添加安装目录下的 bin 目录到系统 Path 中,不然会提示如下两种错误:
ValueError: No prog dot in path. ValueError: Program dot not found in path.
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
OpenJDK里的AsmTools简介
前言 https://wiki.openjdk.java.net/display/CodeTools/asmtools 在OpenJDK里有一个AsmTools项目,用来生成正确的或者不正确的java .class文件,主要用来测试和验证。 我们知道直接修改.class文件是很麻烦的,虽然有一些图形界面的工具,但还是很麻烦。 以前我的办法是用ASMifier从.class文件生成asm java代码,再修改代码,生成新的.class文件,非常麻烦。 AsmTools引入了两种表示.class文件的语法: JASM 用类似java本身的语法来定义类和函数,字节码指令则很像传统的汇编。 JCOD 整个.class用容器的方式来表示,可以很清楚表示类文件的结构。 重要的是两种语法的文件都是可以和.class互相转换的。 构建AsmTools 官方文档: https://wiki.openjdk.java.net/display/CodeTools/How+to+build+AsmTools 需要有jdk8和ant。 clone代码 hg clone http://hg.openjdk.jav...
- 下一篇
Python全栈工程师(异常(基础))
ParisGabriel 每天坚持手写一天一篇 决定坚持几年 为了梦想为了信仰 Python人工智能从入门到精通 补充:包的相对导入 只对后两种导入方式有用 前两次改进的学生管理系统在20课中 已补充 异常(基础)except: 什么是错误: 是指由于逻辑或语法等导程序无法正常执行的问题 什么是异常: 是程序出错的标识符的一种状态 当异常发时 程序不会再向下执行,而转去调用此函数的地方 待处理此错误并恢复为正常状态 异常的作用: 用作信号, 通知上层调用者有错误产生需要处理try 语句: 两种语法: ry-except语句(接受异常通知) try-finally语句try-except 语法 : try: 可能触发异常的语句 except 错误类型1[as 变量1]: 异常处理语句2 except 错误类型2[as 变量2]: 异常处理语句2 except (错误类型3, 错误类型4,...)[as 变量3]: 异常处理语句3 ...... except: 异常处理语句(其他)(匹配所有类型错误) else: 未发生异常语句(可以没有此语句 没...
相关文章
文章评论
共有0条评论来说两句吧...