下載微軟雅黑字體
- 下載地址:微軟雅黑
找到字體文件夾
import matplotlib
print(matplotlib.matplotlib_fname())
以我的為例子,輸出為
C:\Users\adobe\app\anaconda3\lib\site-packages\matplotlib\mpl-data\matplotlibrc
所以說,以我使用的anaconda為例子,它在lib\site-packages\matplotlib\mpl-data\matplotlibrc
文件夾下面.
進入fonts\ttf
目錄,把第一步下載的msyh.ttf放到該目錄下面
修改matplotlibrc
文件
使用任何一個文件編輯器(推薦vscode),修改該文件,通過ctrl+f
搜索找到
#axes.unicode_minus : True ## use unicode for the minus symbol
#font.family : sans-serif
#font.sans-serif : DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
分別修改為以下三行
axes.unicode_minus : False ## use unicode for the minus symbol
font.family : Microsoft YaHei
font.sans-serif : Microsoft YaHei, DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
解釋:
- 首先三行都需要刪除第一個#,取消注釋
- 第一行,修改True為False,是為了正常顯示負號
- 第二行和第三行是為了使用微軟雅黑作為默認字體
刪除緩存
使用下面的代碼,獲取緩存文件夾.
import matplotlib
print(matplotlib.get_cachedir())
我的輸出為
C:\Users\adobe\.matplotlib
所以,一般在用戶目錄的matplotlib
,刪除該目錄下的所有文件
image.png
重啟Python即可(意思是關閉所有正在運行的Python窗口,然后重新打開,要不然無法生效)
測試
使用如下的簡單代碼進行測試
# coding:utf-8
import matplotlib.pyplot as plt
plt.plot((1,2,3),(4,3,-1))
plt.xlabel(u'橫坐標') # python3 可以不用u,已經是默認了
plt.ylabel(u'縱坐標')
plt.show()