Notebook中Matplotlib绘图的中文乱码
【问题描述】我们在使用jupyter的NoteBook进行python脚本编程,若使用Matplotlib进行绘制效果图,在显示中文时可能会遇到乱码的问题,提示和具体的效果图如下:
究其原因是原生的jupyter中的Matplotlib库缺少中文字体的支持,所以最佳的解决方案就是在Matplotlib中添加中文字体的支持,并修改配置文件即可。
【具体的解决方案】
1.下载所需的字体库SimHei.ttf,根据自己的系统版本选择对应版本的字体。具体的下载地址见文章末尾
2.将该字体复制到\Lib\site-packages\matplotlib\mpl-data\fonts\ttf\目录下
3.修改配置文件:\Lib\site-packages\matplotlib\mpl-data\matplotlibrc
-
font.family : sans-serif (去掉注释)
-
font.sans-serif (去掉注释) 替换上述语句为: font.sans-serif :SimHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
4.更新配置,使之生效,清除机器缓存
在终端或者cmd中,依次键入如下命令:
python
from matplotlib.font_manager import _rebuild
_rebuild()
5.重启Jupyter Notebook即可生效
6.写在最后
本文是题主遇到该问题时,在网上收集了各种资料后,解决了该问题,觉得收获颇多。故再次将其展示与博客,希望能和大家共勉,一起去贡献出更精彩的博客!
注:字体下载地址:
链接: https://download.csdn.net/download/birduncle/11026266
题主只是一个入门的小学生,希望大家多多指教!如果该帖子确实能解决您的问题,望多多留言,谢谢!