不使用Anaconda,直接使用pip安裝便可:python
pip3 install matplotlib
Microsoft YaHei(微軟雅黑)
Matplotlib不能默認使用中文字體顯示字符的緣由只是由於其未包含中文字體文件,因此導入中文字體文件到Matplotlib中便可。json
Matplotlib的安裝位置,若是使用pip3
安裝則其默認的安裝路徑在/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/
。
固然你也能夠經過以下程序肯定你的Mac上的Matplotlab的安裝路徑:緩存
import matplotlib print(matplotlib.matplotlib_fname())
打開這個目錄能夠看到這個路徑下的mpl-data/fonts/ttf/
,這個就是Matplotlib引入字體的路徑,咱們只須要把微軟雅黑字體的ttf文件拷貝到其中便可。bash
仍然在上述的Matplotlib安裝路徑中,能夠看到mpl-data/matplotlibrc
這個文件,這個就是Matplotlib的配置文件。測試
在這個文件中搜索font.family
,將#
刪除即把此行註釋打開。則Matplotlib如今的默認字體族是:字體
font.family : sans-serif
再在這個文件中搜索font.sans-serif
,將#
刪除即把此行註釋打開,而後在這個配置的最前面加上Microsoft YaHei
:spa
font.sans-serif : Microsoft YaHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
則Matplotlib
如今的默認sans-serif
字體族會最早使用Microsoft YaHei
去展現字體,而這個Microsoft YaHei
就能夠展現中文字體了。code
爲了更好地看到效果,最好能夠清楚以前Matplotlib生成的緩存文件,打開~/.matplotlib
路徑,其中能夠看到fontList.json
和tex.cache
,前者其實就是字體列表的緩存文件,能夠刪除之:blog
rm -rf fontList.json
以下測試代碼查看是否生效:ip
# coding:utf-8 import matplotlib.pyplot as plt plt.plot((1, 2, 3), (4, 3, -1)) plt.xlabel(u'橫座標') plt.ylabel(u'縱座標') plt.show()
執行效果以下所示: