2017-04-15 110 views
1

This是關於使用Google Cloud Datalab可視化網絡圖的教程。無法在Google Cloud Datalab中使用graphviz

一切工作完美(需要改變 「gcp.bigquery」 到 「datalab.bigquery」 中[25]),直到:

In [35]: 

%%bash 
/usr/bin/yes | apt-get install graphviz 
pip install --upgrade graphviz 
/usr/bin/yes | pip uninstall pyparsing 
pip install -Iv https://pypi.python.org/packages/source/p/pyparsing/pyparsing-1.5.7.tar.gz 
pip install --upgrade pydot 

一旦我卸載pyparsing,畫中畫命令不能工作,未來2行不能正確執行。

如果我忽略與pyparsing,只要安裝/升級graphvizpydot線,將發生在這一行中的 「在[67]:」:錯誤

pos=nx.graphviz_layout(gmax, prog='circo') 

AttributeError: 'module' object has no attribute 'graphviz_layout'

我不我認爲這是一個pyparsing的問題。也許graphviz版本是關鍵,因爲本教程是在大約2年前編寫的。

有什麼想法嗎?

由於

+1

可能重複的[AttributeError:'模塊'對象沒有屬性'graphviz \ _layout'與networkx 1.11](http://stackoverflow.com/questions/39411102/attributeerror-module-object-has-no-attribute- graphviz的佈局與 - networkx) – snakecharmerb

回答

2

我基於this StackOverflow post改變

pos=nx.graphviz_layout(gmax, prog='circo') 

pos=nx.nx_pydot.graphviz_layout(gmax, prog='circo') 

後的網絡圖顯示正確。這需要pydotplus,所以我還用%%bash更新了其中一個單元。我跑

%%bash 
apt-get update 
apt-get install -y graphviz 
pip install pydot 
pip install graphviz 
pip install pydotplus 

,而不是

%%bash 
/usr/bin/yes | apt-get install graphviz 
pip install --upgrade graphviz 
/usr/bin/yes | pip uninstall pyparsing 
pip install -Iv https://pypi.python.org/packages/source/p/pyparsing/pyparsing-1.5.7.tar.gz 
pip install --upgrade pydot 

我希望這有助於!

相關問題