导入错误:无法导入pydot。您必须安装pydot和graphviz才能使`pydotprint`正常工作。

77

我看到了类似的问题,但也没有解决,所以我决定问一下。

我正在尝试使用Keras可视化我的模型。

from keras.utils import plot_model
plot_model(model, to_file='model.png')

首先,它显示了错误。

ImportError: Failed to import pydot. You must install pydot and graphviz for `pydotprint` to work.

因此,我通过Anaconda提示符安装了pydot和graphviz,并在激活我的环境后进行了安装。
conda install -c https://conda.binstar.org/t/TOKEN/j14r pydot
conda install -c https://conda.binstar.org/t/TOKEN/j14r graphviz

然后,我关闭了 Spyder 并重新打开了它。当我运行代码片段时,仍然显示相同的错误。 我错过了什么吗?


1
请查看 https://dev59.com/-FYN5IYBdhLWcg3wm5EL#47209738 - 0 _
1
可能是keras plot_model 告诉我安装pydot的重复问题。 - 0 _
1
@loannis Filippidis,谢谢,是的,它说:“已安装的GraphViz可执行文件(dot、neato等)的路径需要在PATH环境变量中,以便pydot找到它们。在早期版本中,pydot曾经搜索这些可执行文件,但现在不再这样做。”如果您是指这个问题,我不知道如何做,对此很抱歉,您能否更具体地说明一下步骤? - bit_scientist
@loannisFilippidis,我在_C:\Users\username\Anaconda3\envs\tfcnn\Library\bin\graphviz_中找到了dot和neato可执行文件,并将其添加到系统属性>环境变量>系统变量>编辑中。但是它似乎没有起作用! - bit_scientist
我不是Windows用户。也许需要重新启动计算机才能使新路径生效。在Linux系统中,通常通过“~/.bashrc”配置路径。 - 0 _
显示剩余2条评论
23个回答

-1
安装Pycharm模块时要小心,不要忘记注意你是否处于conda环境中。

示例包布局


-1

这意味着你已经导入了keras和tensorflow作为tf。目前的建议是不要导入keras,而是在需要访问keras函数时使用tf.keras。 - Leland Hepworth

-1

它在Spuder IDE中运行。主要思想是减少导入的库的数量。

from keras.utils.vis_utils import pydot
from keras.utils.vis_utils import plot_model

plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=True)

8
请勿只发布代码作为答案,同时提供解释您的代码做了什么以及如何解决问题。带有解释的答案通常更有帮助和较高质量,并且更有可能获得赞同。 - Mark Rotteveel
这个答案展示了如何使用plot_model函数,而OP已经证明他们知道如何做到这一点。问题是关于解决pydot和graphviz安装错误的。 - Leland Hepworth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接