【問題描述】我們在使用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
題主只是一個入門的小學生,希望大家多多指教!如果該帖子確實能解決您的問題,望多多留言,謝謝!