檢查可用字體:
import matplotlib.font_manager as fm
fonts = [f.name for f in fm.fontManager.ttflist]
print(fonts) # 查看系統中可用的字體列表
# 列出所有中文字體文件
!fc-list :lang=zh
沒有中文字體,需要下載
!sudo apt-get install fonts-wqy-microhei -y # 文泉驛微米黑
檢查sudo安裝
python !dpkg -s sudo 2>/dev/null || echo "sudo 未安裝"
如果沒安裝
執行下面命令,安裝sudo
python 安裝 sudo(根據包管理器選擇)
設置字體(局部)
from matplotlib.font_manager import FontProperties
# 指定中文字體路徑
font_path = "/usr/share/fonts/truetype/wqy/wqy-microhei.ttc"
font = FontProperties(fname=font_path)
路徑按照
!fc-list :lang=zh
查到的
在 Python 中驗證字體是否可用
import matplotlib.pyplot as plt# 測試字體是否可用(以黑體為例)
try:plt.title("測試中文標題", fontproperties=font) # 若顯示正常,則字體可用plt.show()
except Exception as e:print(f"字體設置失敗:{e}")
設置字體(全局)
from pathlib import Path# 字體文件路徑(根據實際情況修改)
font_path = Path("/usr/share/fonts/truetype/wqy/wqy-microhei.ttc")# 將字體文件添加到 Matplotlib 的字體緩存
fm.fontManager.addfont(str(font_path))# 獲取字體名稱(用于全局設置)
font_name = fm.FontProperties(fname=str(font_path)).get_name()# 全局設置字體
plt.rcParams["font.family"] = font_name
在 Python 中驗證字體是否可用
import matplotlib.pyplot as plt# 測試字體是否可用(以黑體為例)
try:plt.title("測試中文標題") # 若顯示正常,則字體可用plt.show()
except Exception as e:print(f"字體設置失敗:{e}")