1、為什么不顯示中文:
Matplotlib默認不支持中文字符,因為默認的英文字體無法顯示漢字。
圖片顯示情況:
2、解決方案:
在代碼塊加上這兩行代碼:
plt.rcParams[‘font.sans-serif']=[‘SimHei'] #用來正常顯示中文標簽
plt.rcParams[‘a(chǎn)xes.unicode_minus']=False #用來正常顯示負號
圖片顯示情況:
補充jupyter-notebook 中matplotlib不支持中文的問題(Linux)
前言
問題就不截圖了, jupyter-notebook中,使用plt畫出的圖像,中文都是小方格(亂碼)
解決方法如下
1. Linux安裝字體
把Windows的字體C:/Windows/Fonts復制到Linux系統(tǒng)的存放字體路徑/usr/share/fonts下, 如圖:
cd到/usr/share/fonts/Fonts,也就是拷貝來的文件夾, 建立字體索引信息,更新字體緩存,讓字體生效, 運行命令:
mkfontscale mkfontdir fc-cache -fv source /etc/profile fc-list |wc -l
查看字體fc-list :lang=zh
2. 添加配置
這里有很多版本,比如:
import matplotlib
matplotlib.use('qt4agg')
#指定默認字體
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
matplotlib.rcParams['font.family']='sans-serif' #解決負號'-'顯示為方塊的問題
matplotlib.rcParams['axes.unicode_minus'] = False
我的設置是:
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STSong']
mpl.rcParams['axes.unicode_minus'] = False
如圖,可以正常顯示中文了
3. 如果還不行,清除緩存
如果添加了第二部的配置,但還是顯示中文亂碼, 那么有可能是緩存的問題, 執(zhí)行rm -r ~/.cache/matplotlib
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- Jupyter Notebook運行JavaScript的方法
- 解決jupyter notebook圖片顯示模糊和保存清晰圖片的操作
- Jupyter notebook 輸出部分顯示不全的解決方案
- 解決jupyter notebook啟動后沒有token的坑
- Python中Jupyter notebook快捷鍵總結
- 解決Jupyter-notebook不彈出默認瀏覽器的問題
- 終端能到import模塊 解決jupyter notebook無法導入的問題
- Jupyter Notebook讀入csv文件時出錯的解決方案
- Jupyter notebook 更改文件打開的默認路徑操作