jupyter-notebook 中matplotlib不支持中文的問題(Linux)


前言:
問題就不截圖了, jupyter-notebook中,使用plt畫出的圖像,中文都是小方格(亂碼)
解決方法如下

1. Linux安裝字體

把Windows的字體C:/Windows/Fonts復制到Linux系統的存放字體路徑/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. 如果還不行,清除緩存

如果添加了第二部的配置,但還是顯示中文亂碼, 那么有可能是緩存的問題, 執行rm -r ~/.cache/matplotlib


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM