在mac上使用matplotlib繪圖的時(shí)候之前總是不能輸出中文认然,這是一個(gè)很簡(jiǎn)單的小bug,通過(guò)搜索教程找到一個(gè)稍微簡(jiǎn)單的解決方法如下:
1. 添加SimHei字體(simhei.ttf文件)
首先我們?cè)趐ython中運(yùn)行以下命令來(lái)查看你的matplotlib所在位置:
matplotlib.matplotlib_fname()
$$$ a_t $$$
參考上述的輸出結(jié)果,進(jìn)入存儲(chǔ)字體的目錄
cd [你自己的一些目錄](méi)/py2.7/lib/python2.7/site-packages/matplotlib/mpl-data/fonts
從網(wǎng)上下載SimHei字體,將simhei.ttf存儲(chǔ)入上面的這個(gè)fonts
目錄中,最好重命名為 SimiHei.ttf
2. 刪除~/.matplotlib/下的所有緩存文件
rm -rf ~/.matplotlib/*.cache
3. 在代碼中聲明使用simhei字體
開(kāi)始這一步的時(shí)候,最好先重啟一下你的jupyter
敦腔。
在你要畫(huà)圖的的Python文件中,添加
plt.rcParams['font.sans-serif'] = ['SimHei']
以下是一個(gè)例子
import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib
plt.rcParams['axes.labelsize'] = 14
plt.rcParams['xtick.labelsize'] = 12
plt.rcParams['ytick.labelsize'] = 12
plt.rcParams['font.sans-serif'] = ['SimHei']
from __future__ import division
def logit(x):
return 1/(1+np.exp(-x))
z = np.linspace(-5,5,200)
plt.plot([-5,5],[0,0],'k-')
plt.plot([-5,5],[1,1],'k--')
plt.plot([0,0],[-2,1.2],'k-')
plt.plot([-5,5],[-3/4, 7/4], 'g--')
plt.plot(z, logit(z), 'b-', linewidth=2)
props = dict(facecolor='black', shrink=0.1)
plt.annotate('Saturating', xytext=(3.5, 0.7), xy=(5,1), arrowprops=props, fontsize=14, ha='center')
plt.annotate('Linear', xytext=(2, 0.2), xy=(0,0.5), arrowprops=props, fontsize=14, ha='center')
plt.annotate('Saturating', xytext=(-3.5, 0.7), xy=(-5,0), arrowprops=props, fontsize=14, ha='center')
plt.grid(True)
plt.title(u'我就是我') # 注意以u(píng)開(kāi)頭
plt.axis([-5, 5, -0.2, 1.2])