Python matplotlib修改默認字體的操作
matplotlib庫作為Python常用的數(shù)據(jù)可視化庫,默認字體居然不支持中文字體,必須得吐槽一下~
閑言少敘,開始正文
方法1:在plot中指定prop參數(shù)
使用matplotlib.font_manager下的FontProperties加載中文字體
調(diào)用函數(shù)時通過prop屬性指定中文字體
import matplotlib.pyplot as plt import matplotlib.font_manager as fm x_data = ['2011', '2012', '2013', '2014', '2015', '2016', '2017'] # 定義2個列表分別作為兩條折線的Y軸數(shù)據(jù) 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:\Windows\Fonts\YaHei.Consolas.1.12.ttf') # 賒著prop參數(shù)未該字體 plt.legend(loc='best', prop=my_font) plt.show() var foo = 'bar';
方法2:修改matplotlib默認字體
1、使用交互行獲取matplotlib配置文件的保存位置
>>>import matplotlib
>>>matplotlib.matplotlib_fname()
'G:\\Anaconda3\\envs\\PyProjects\\lib\\site-packages\\matplotlib\\mpl-data\\matplotlibrc'
2、打開文件,找到如下行
# font.family : sans-serif
3、修改字體為系統(tǒng)中能夠加載中文的字體(這里我用的是SimHei,即黑體)
font.family : SimHei
當然用Yahei Consolas Hybrid也是可以的(需要自己安裝),但是Microsoft Yahei和msyh都試過了,會報錯,具體原因有待考證~
補充知識:修改 matplotlib 的默認配置添加雅黑字體
根據(jù)anaconda安裝路徑找到配置文件
E:\software\anaconda3\Lib\site-packages\matplotlib\mpl-data\matplotlibrc
打開, 找到 font.sans-serif 刪掉注釋,添加即可
重新啟動 jupyter notebook即可
在新開啟的文件中輸入,就可以正常顯示漢字
import matplotlib as mpl
mpl.rcParams['font.serif'] = ['SimHei']
以上這篇Python matplotlib修改默認字體的操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
初步介紹Python中的pydoc模塊和distutils模塊
這篇文章主要介紹了Python中的pydoc模塊和distutils模塊,本文來自于IBM官方開發(fā)者技術(shù)文檔,需要的朋友可以參考下2015-04-04使用Anaconda創(chuàng)建Pytorch虛擬環(huán)境的排坑詳細教程
PyTorch是一個開源的Python機器學習庫,基于Torch,用于自然語言處理等應(yīng)用程序,下面這篇文章主要給大家介紹了關(guān)于使用Anaconda創(chuàng)建Pytorch虛擬環(huán)境的相關(guān)資料,需要的朋友可以參考下2022-12-12python如何實現(xiàn)單向鏈表及單向鏈表的反轉(zhuǎn)
這篇文章主要介紹了python如何實現(xiàn)單向鏈表及單向鏈表的反轉(zhuǎn),幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下2021-03-03使用Python的Twisted框架編寫非阻塞程序的代碼示例
Twisted是基于異步模式的開發(fā)框架,因而利用Twisted進行非阻塞編程自然也是必會的用法,下面我們就來一起看一下使用Python的Twisted框架編寫非阻塞程序的代碼示例:2016-05-05Python數(shù)據(jù)類型轉(zhuǎn)換匯總
這篇文章主要給大家分享的是Python數(shù)據(jù)類型轉(zhuǎn)換匯總,int,float相互轉(zhuǎn)換、int,string相互轉(zhuǎn)換、float,string相互轉(zhuǎn)換、string,list相互轉(zhuǎn)換等常見內(nèi)容,需要的小伙伴可以參考一下2022-03-03