Python matplotlib修改默認字體的操作
matplotlib庫作為Python常用的數據可視化庫,默認字體居然不支持中文字體,必須得吐槽一下~
閑言少敘,開始正文
方法1:在plot中指定prop參數
使用matplotlib.font_manager下的FontProperties加載中文字體
調用函數時通過prop屬性指定中文字體
import matplotlib.pyplot as pltimport matplotlib.font_manager as fmx_data = [’2011’, ’2012’, ’2013’, ’2014’, ’2015’, ’2016’, ’2017’]# 定義2個列表分別作為兩條折線的Y軸數據y_data = [58000, 60200, 63000, 71000, 84000, 90500, 107000]y_data2 = [52000, 54200, 51500,58300, 56800, 59500, 62700]# 指定折線的顏色、寬度、線形ln1, = plt.plot(x_data, y_data, color=’red’, linewidth=2.0,linestyle=’--’, label=’A書年銷量’)ln2, = plt.plot(x_data, y_data2, color=’blue’, linewidth=2.0,linestyle=’-.’, label=’B書年銷量’)# 使用my_font存出一個加載的中文字體my_font = fm.FontProperties(fname=’C:WindowsFontsYaHei.Consolas.1.12.ttf’)# 賒著prop參數未該字體plt.legend(loc=’best’, prop=my_font)plt.show()var foo = ’bar’;
方法2:修改matplotlib默認字體
1、使用交互行獲取matplotlib配置文件的保存位置
>>>import matplotlib>>>matplotlib.matplotlib_fname()’G:Anaconda3envsPyProjectslibsite-packagesmatplotlibmpl-datamatplotlibrc’
2、打開文件,找到如下行
# font.family : sans-serif
3、修改字體為系統中能夠加載中文的字體(這里我用的是SimHei,即黑體)
font.family : SimHei
當然用Yahei Consolas Hybrid也是可以的(需要自己安裝),但是Microsoft Yahei和msyh都試過了,會報錯,具體原因有待考證~
補充知識:修改 matplotlib 的默認配置添加雅黑字體
根據anaconda安裝路徑找到配置文件
E:softwareanaconda3Libsite-packagesmatplotlibmpl-datamatplotlibrc
打開, 找到 font.sans-serif 刪掉注釋,添加即可
重新啟動 jupyter notebook即可
在新開啟的文件中輸入,就可以正常顯示漢字
import matplotlib as mplmpl.rcParams[’font.serif’] = [’SimHei’]
以上這篇Python matplotlib修改默認字體的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章: