事情是這樣的:平時(shí)我匯報(bào)或者寫論文需要畫圖,都會(huì)喜歡用Python的 matplotlib 和 seaborn 把數(shù)據(jù)📊 📈 和分析結(jié)果 🗂 直接畫出來(lái),因?yàn)檫@樣太方便,而且解析度非常高。
然而,今天老板說(shuō)想需要我總結(jié)下我的分析結(jié)果,然后ta說(shuō)不喜歡 matplotlib 的字體,讓我改一改。但是,Jupyter Notebook一直報(bào)錯(cuò)說(shuō):
Findfont: Font family [‘sans-serif‘] not found. Falling back to DejaVu Sans.
搞得我很頭疼🤯🤯🤯
所以,我就花了點(diǎn)時(shí)間,研究了matplotlib 究竟如何可以隨意改變成 Windowns MS字體。
以下是我的操作系統(tǒng):
OS:Ubuntu 18.04.5 LTS
Python version:3.6.11
Matplotlib: 3.3.2
Seaborn: 0.10.0
步驟:
1. 下載必要的支持庫(kù)
sudo apt-get install fontconfig
sudo apt install ttf-mscorefonts-installer
這里需要用 Tab
鍵選擇 Yes>再按Enter
鍵同意,之后等程序順利跑完就可以了。
成功后,就能夠在 /usr/share/fonts/truetype/msttcorefonts/ 下找到新下載的 Windows 字體。
2. 更新字體庫(kù) + 清理 matplotlib 的緩存
sudo fc-cache -fv
rm -fr ~/.cache/matplotlib
安裝完字體,如果不更新字體庫(kù),系統(tǒng)是無(wú)法知道你有新的字體要導(dǎo)入 matplotlib。 然后,第二個(gè)指令是用來(lái)防止 matplotlib運(yùn)行的時(shí)候還用舊版本的緩存設(shè)定你的圖表。刪除后,之后運(yùn)行 matplotlib 就會(huì)自動(dòng)建立一 個(gè)新的設(shè)定緩存。
3. 打開 Jupyter Notebook
在導(dǎo)入matplotlib和seaborn之后,就可以用
plt.rcParams['font.family']
改變你的字體。舉個(gè)栗子,如果我想換成sans-serif,然后查看matplotlib sans-serif 字體的顯示順序,就用下圖的指令:
如果想強(qiáng)制只使用一種字體,也可以再加入下面的指令 (e.g. 只用 sans-serif 的 Arial 字體)
plt.rcParams['font.sans-serif'] = 'Arial'
到此這篇關(guān)于Python中matplotlib如何改變畫圖的字體的文章就介紹到這了,更多相關(guān)Python matplotlib改變畫圖的字體內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Python畫圖工具M(jìn)atplotlib庫(kù)常用命令簡(jiǎn)述
- Python超簡(jiǎn)單容易上手的畫圖工具庫(kù)推薦
- python繪圖模塊之利用turtle畫圖
- Python基礎(chǔ)之畫圖神器matplotlib
- Python畫圖小案例之小雪人超詳細(xì)源碼注釋