termux中matplotlib無法顯示中文問題的解決方法
問題背景
在開始正文之前,感謝用戶名為憐索的朋友送給了我的博客2021年的第一個贊!
import numpy as np import matplotlib import matplotlib.pyplot as plt import os matplotlib.rcParams['xtick.direction'] = 'in' matplotlib.rcParams['ytick.direction'] = 'in' plt.rcParams['axes.unicode_minus'] = False # 用來正常顯示負(fù)號 #顯示中文 plt.rcParams['font.sans-serif'] = ['simhei'] x = np.linspace(-1,1,50)#從(-1,1)均勻取50個點 y = 2 * x plt.plot(x,y) plt.xlabel("吸光值") plt.ylabel("濃度") plt.show()
上述代碼在window和linux系統(tǒng)均能夠在橫縱坐標(biāo)標(biāo)題正確顯示中文,但在termux中效果如下:
解決方案
從window或者當(dāng)前系統(tǒng)中找到中文字體,或者前往https://github.com/dolbydu/font下載相應(yīng)字體(該網(wǎng)站目前需要科學(xué)上網(wǎng)),本文以字體simhai.ttf(黑體)為例;
將simhai.ttf文件移動到/data/data/com.termux/files/usr/lib/python3.9/site-packages/matplotlib/mpl-data/fonts/ttf目錄下;
修改matplotlibrc文件
#去掉注釋 font.family : sans-serif #去掉注釋,并在冒號后的值前添加前文提及的中文字體 font.sans-serif : STKaiti, Simhei........ #刪除matplotlib緩存 rm -rf ~/.cache/matplotlib
測試
還是上述代碼:
import numpy as np import matplotlib import matplotlib.pyplot as plt import os #設(shè)置坐標(biāo)軸朝向 matplotlib.rcParams['xtick.direction'] = 'in' matplotlib.rcParams['ytick.direction'] = 'in' plt.rcParams['axes.unicode_minus'] = False # 用來正常顯示負(fù)號 #顯示中文 plt.rcParams['font.sans-serif'] = ['simhei'] x = np.linspace(-1,1,50)#從(-1,1)均勻取50個點 y = 2 * x plt.plot(x,y) plt.xlabel("吸光值") plt.ylabel("濃度") #由于termux沒有圖像界面,因此不能夠使用plt.show(),因此用plt.savefig()配合termux-open命令替代 plt.savefig("test2.png") os.system("termux-open test2.png")
效果:
附加:matplotlib中文字體目錄
黑體:SimHei
微軟雅黑:Microsoft YaHei
微軟正黑體:Microsoft JhengHei
新宋體:NSimSun
新細(xì)明體:PMingLiU
細(xì)明體:MingLiU
華文新魏:STXinwei
華文行楷:STXingkai
華文隸書:STLliti
花紋琥珀:STHupo
華文彩云:STCaiyun
方正姚體:FZYaoti
方正舒體:FZShuTi
標(biāo)楷體:DFKai-SB
華文仿宋:STFangsong
華文中宋:STZhongsong
華文宋體:STSong
華文楷體:STKaiti
華文細(xì)黑:STXihei
幼圓:YouYuan
隸書:LiSu
楷體_GB 2313:Kaiti_GB2313
仿宋_GB2313:FangSong_GB2313
仿宋:FangSong
到此這篇關(guān)于termux中matplotlib無法顯示中文問題的解決方法的文章就介紹到這了,更多相關(guān)termux matplotlib無法顯示中文內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深度理解Python中Class類、Object類、Type元類
本文主要介紹了深度理解Python中Class類、Object類、Type元類,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06python時間整形轉(zhuǎn)標(biāo)準(zhǔn)格式的示例分享
這篇文章主要介紹了python時間整形轉(zhuǎn)標(biāo)準(zhǔn)格式的示例,需要的朋友可以參考下2014-02-02python PyQt5的窗口界面的各種交互邏輯實現(xiàn)
PyQt5是一個Python綁定庫,用于Qt C++ GUI框架,它允許開發(fā)者使用Python語言創(chuàng)建跨平臺的應(yīng)用程序,并利用豐富的Qt圖形用戶界面功能,本文介紹了python中PyQt5窗口界面的各種交互邏輯實現(xiàn),需要的朋友可以參考下2024-07-07python批量添加zabbix Screens的兩個腳本分享
這篇文章主要給大家分享了python中兩個批量添加zabbix Screens的腳本,分別是將單個主機的所有圖形添加到一個Screens和將同組主機的同一圖形添加到一個Screens,有需要的朋友可以參考借鑒,下面來一看看吧。2017-01-01全網(wǎng)最新用python實現(xiàn)各種文件類型轉(zhuǎn)換的方法
這篇文章主要介紹了用python實現(xiàn)各種文件類型轉(zhuǎn)換的方法,包括word轉(zhuǎn)pdf,excel轉(zhuǎn)pdf,ppt轉(zhuǎn)pdf,本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05使用Python對Syslog信息進(jìn)行分析并繪圖的實現(xiàn)
這篇文章主要介紹了使用Python對Syslog信息進(jìn)行分析并繪圖的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04