一、Graphviz軟件和pycallgraph庫安裝(Windows)
1.1 Graphviz軟件安裝
官網下載:http://www.graphviz.org/download/
根據自己版本選擇下載(我在Windows上安裝)
配置環境變量,在path中添加
例如我安裝在F:\,那麼就在我的電腦——屬性——高級系統設置——環境變量-path:添加環境變量F:\Graphviz2.38\bin
驗證:
在cmd窗口輸入 dot -help,出現下圖內容,說明安裝成功
1.2 安裝graphviz + pycallgraph的python模塊
pip3 install -i https://mirrors.aliyun.com/pypi/simple/ graphviz
pip3 install -i https://mirrors.aliyun.com/pypi/simple/ pycallgraph
二、使用
你的程序 只有你的操作 使用了某個函數,才能顯示在流圖中。用戶沒有使用的功能則不會出現在流圖中。
庫文件調用
from pycallgraph import PyCallGraph
from pycallgraph.output import GraphvizOutput
from pycallgraph import Config
from pycallgraph import GlobbingFilter
主函數
def main():
# 你的主函數代碼。
if __name__ == "__main__":
config = Config()
# 關係圖中包括(include)哪些函數名。
#如果是某一類的函數,例如類gobang,則可以直接寫'gobang.*',表示以gobang.開頭的所有函數。(利用正則表達式)。
config.trace_filter = GlobbingFilter(include=[
'方法1','方法2'
])
# 關係圖中不包括(exclude)哪些函數。(正則表達式規則)
# config.trace_filter = GlobbingFilter(exclude=[
# 'pycallgraph.*',
# ])
graphviz = GraphvizOutput()
graphviz.output_file = 'graph.png'
with PyCallGraph(output=graphviz, config=config):
main()
如果不需要特別備註需要和不需要,只要將config.trace_filter方法刪去即可
三、遇到的一些問題
1、pycharm運行時,提示找不到graphviz。
應該是pycharm讀不到windows配置的 path,手動在pycharm配置graphviz的path
參考
2、https://www.cnblogs.com/yongjieShi/p/10099587.html
3、graphviz各類呈現樣式 http://www.graphviz.org/gallery/