我是靠谱客的博主 等待便当,最近开发中收集的这篇文章主要介绍Pydotplus使用说明Tip1 - Pydotplus与Graphviz区别Tip2 - 设置图案格式Tip3 - 引入数据,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Pydotplus使用说明

  • Tip1 - Pydotplus与Graphviz区别
  • Tip2 - 设置图案格式
  • Tip3 - 引入数据

声明:主要记录学习心得,有点乱,请见谅!如有任何错误请指正,相互学习啊~

安装pydotplus,亲测是需要插入路径,原因查到再补

pip install pydotplus
import pydotplus as pdp
import os
os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'

Tip1 - Pydotplus与Graphviz区别

Pydotplus 一大优势是它可像dot原生语言一样编辑移动形态
实例:

from IPython.display import display, Image
graph = pdp.graph_from_dot_data('digraph demo1{ a -> b -> c; c ->a; }')
display(Image(graph.create_png()))

生成图
此为graphviz内原生语言生成,在python内无法实现,是需要打开dot编辑器才能使用,python内会报错
原因:
要想使用graphviz,首先需要上官网下载graphviz并安装。安装之后就可以使用graphviz自带的编辑器gvedit来编写dot代码来绘制图形了。快捷键F5来预览生成的图片,Shift+F5打开对话框并点击ok就可以生成指定类型的图片文件。

但是graphviz自带的gvedit编辑器那是非常非常的难用。怎么办呢?经过四处寻找和妥协,最终找到了windows平台下的还挺好用的工具,此工具不仅具有dot代码高亮、代码提示,还阔以预览生成的图片,只是暂时还不能导出图片。该工具就是github出品的代码编辑器Atom,另外需要安装两个插件:language-dot和graphviz-preview。

使用Atom来编写和预览图片,最后使用gvedit来导出图片。看起来还不错的样子。

digraph g {
    a->b;
    b->c;
    c->a;
}

而在python(此处我用得jupyter notebook)是需要以node,edge得形式展现

 from graphviz import Digraph
 dot = Digraph(comment='The Round Table')
 
 dot.node('A', 'King Arthur')
 dot.node('B', 'Sir Bedevere the Wise')
 dot.node('L', 'Sir Lancelot the Brave')

 dot.edges(['AB', 'AL'])
 dot.edge('B', 'L', constraint='false')

Tip2 - 设置图案格式

链接参考:https://mlln.cn/2018/09/21/pydotplus安装和基本入门/
Graphviz User Guide:https://graphviz.readthedocs.io/en/stable/manual.html

dot = '''
//定义节点属性
  digraph g {
      //==========定义节点关系============
      a->b;
      b->c;
      c->a;
      c->d->e->f;
      d->g;
      e->h;
      //==========定义节点属性============
      //定义a节点为长方形, 样式为填充, 填充颜色为#ABACBA
      a[shape=box,label="Server1nWebServer",fillcolor="#ABACBA",style=filled];
      //定义b为5边形, 标签为"bb", 样式为填充, 填充色为red
      b[shape=polygon,sides=5,label="bb",style=filled,fillcolor=red];
      //c, 默认为椭圆
      d[shape=circle,label="和平",fontname="Microsoft YaHei"]; //园
      e[shape=triangle]; //三角形
      f[shape=polygon, sides=4, skew=0.5]; //平行四边形
      g[shape=polygon, distortion=0.5]; //梯形, 上边长
      h[shape=polygon, distortion=-.5]; //梯形, 下边长
  }
'''

graph = pdp.graph_from_dot_data(dot)
# 下面这行用于在notebook中显示图片
Image(graph.create_png())

编辑在线上

dot = '''
 digraph g {
 a -> b
 a[shape=circle,label="和平",fontname="Microsoft YaHei"]
 //写在圈内
 b -> c[label="和平",fontname="Microsoft YaHei"]
 //写在线上 
}

Tip3 - 引入数据

待更…

备忘link:
Python pydot.graph_from_dot_data() Examples
PyDotPlus Homepage

最后

以上就是等待便当为你收集整理的Pydotplus使用说明Tip1 - Pydotplus与Graphviz区别Tip2 - 设置图案格式Tip3 - 引入数据的全部内容,希望文章能够帮你解决Pydotplus使用说明Tip1 - Pydotplus与Graphviz区别Tip2 - 设置图案格式Tip3 - 引入数据所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部