PyGraphviz是Python的一個用於繪圖的接口,相比matplotlib而言,PyGraphviz提供了更加抽象,更加快捷高效地繪圖功能。筆者在摸索之后成功使用PyGraphviz制作了第一張圖,此文的主要目的在於提供軟件安裝到使用的細節,供新入門的讀者參考,有錯誤的地方還請大家指出來。
平台:Win7+Python2.7.5+接口PyGraphviz+graphviz
其具體步驟如下:
1,下載並安裝Python,Python下載地址為http://www.python.org/getit/,下載選擇Python版本時參看步驟2,PyGraphviz對Python有版本要求。筆者選擇版本為Pyhon2.7.5,安裝目錄為C:\Python27
2,下載安裝接口PyGraphviz,其下載地址為http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygraphviz
3,下載安裝graphviz,其下載地址為http://www.graphviz.org/Download_windows.php,安裝時可選擇安裝目錄為c:\Graphviz2.30。
筆者注:默認安裝路徑為c:\Program Files\Graphviz2.30,此時,運行時提示奇怪的錯誤:IOError:'c:\Program'...,修改安裝路徑后就沒有問題了。
4,在目錄C:\Python27下創建文件myConfig.pth,使用編輯器添加一行文本:
C:\\Python27\\Lib\\site-packages\\pygraphviz
筆者注:筆者安裝接口PyGraphviz后發現,sys.path中並沒有“C:\\Python27\\Lib\\site-packages\\pygraphviz”,但是文件graphviz.py在此目錄下。因此,為了在其他目錄中也能夠訪問graphviz.py中的內容,需要如步驟4中通過.pth文件將該目錄導入sys.path中,防止出現類似" AttributeError: 'module' object has no attribute 'AGraph' "這樣奇怪的錯誤(import pygraphviz沒有提示錯誤,卻提示AGraph不存在)。
5,測試,編輯一個test.py,其內容如下:
from pygraphviz import * g=AGraph() g.add_node('a') g.add_edge('b','c') g.graph_attr['label']='name of graph' g.node_attr['shape']='circle' g.edge_attr['color']='red' g.layout(prog='dot') g.draw('first_pygraphviz.jpg')
6,運行test.py,生成圖像文件first_pygraphviz.png,如下圖: