python 3.6 Jupyterノートブックと3.6のanacondaのネットワークパッケージを使用してグラフnetworkxを描画しようとしています。しかし、ドキュメントごとにグラフが描画されず、非推奨のメッセージが表示されます。
コード:
import networkx as nx
import csv
import matplotlib as plt
G = nx.read_pajek('Hi-tech.net')
nx.draw(G)
メッセージ:
MatplotlibDeprecationWarning:pyplot.holdは非推奨です。将来の動作は、長期間のデフォルトと一致します。プロットコマンドは、最初にAxesやFigureをクリアせずに要素を追加します。
b = plt.ishold()
将来の動作は、長期間のデフォルトと一致します。プロットコマンドは、最初にAxesやFigureをクリアせずに要素を追加します。
plt.hold(b)
warnings.warn( "axes.holdは非推奨です。3.0で削除されます")
この警告を避けるために、私は単に置き換える
nx.draw(G)
沿って
nx.draw_networkx(G)
My Pythonは3.4、Jupyter '1.0.0'、networkx '1.11'です。
次のコマンド行を追加することにより、nx.draw(G)を動作させることができます。
%matplotlibインライン
Networkxライブラリに入り、エラーを生成した行の前に#を置くだけで、メッセージを取り除くことができました。
.hold()関数はもはや必要ではなく、置き換える必要もないと推測します
エラーが示唆するように...私は611でnx_pylab.pyを変更します
# if cb.is_numlike(alpha):
if isinstance(alpha,numbers.Number):
Lib\site-packages\matplotlib\cbookにあるファイル__init__.py
の-65行目をコメントアウトしました
@deprecated('3.0', 'isinstance(..., numbers.Number)')