Keras plot_model生成模型图出现乱码,求解决方法
解决Keras plot_model生成图片乱码问题
针对你遇到的plot_model生成图片含乱码的问题,可尝试以下几种解决方案:
1. 确认Graphviz本体已安装并配置完整
pydot/pydotplus只是Graphviz的Python绑定,必须安装Graphviz二进制文件才能正常渲染:
- 通过conda安装Graphviz:
conda install graphviz - 验证安装:在终端执行
dot -V,若能输出Graphviz版本信息则安装成功;若提示命令不存在,说明未正确安装或未加入环境变量。 - Windows用户需额外将Graphviz的
bin目录(如C:\Program Files\Graphviz\bin)添加到系统环境变量PATH中,之后重启终端或IDE。
2. 指定plot_model的渲染字体
plot_model默认字体可能在你的系统中不存在,导致乱码,可通过fontname参数指定系统已有的字体:
from tensorflow.keras.utils import plot_model plot_model(model, to_file="test.png", dpi=120, show_shapes=True, fontname='Arial') # 英文环境用Arial # 中文环境可尝试:fontname='SimHei'
3. 安装兼容版本的依赖包
版本不匹配也可能引发渲染异常,可指定稳定版本重新安装:
conda uninstall pydot pydotplus graphviz conda install pydot=1.4.2 pydotplus=2.0.2 graphviz=2.40.1
4. 替代方案:用Netron可视化模型
若上述方法仍无效,可导出模型后用Netron工具可视化:
- 先保存模型:
model.save("cnn_model.h5") - 下载Netron本地桌面应用,直接打开保存的模型文件,即可清晰查看模型结构。
内容的提问来源于stack exchange,提问作者Osama El-Ghonimy
相关产品推荐
相关产品推荐

