matplotlib中文顯示爲方框(Manjaro也適用與許多linux版本)

參考鏈接

Sail的博客

1.首先你先查看你的ttf的目錄

比如我的是
/opt/anaconda/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf
你的可以通過運行一下Python代碼來查詢

import matplotlib
print (matplotlib.matplotlib_fname())
  • 如果你是查找目錄的話,你還需要進入你查找的目錄下,執行
cd /fonts/ttf

然後將你的黑體點擊去下載字體放在裏面去,你也可以從Windows中獲取一個,Windows字體的路徑在C盤 --Windows--Fonts,你可以通過郵件的方式,發送到你linux電腦

2.配置

首先刪除~/.cache/matplotlib的緩衝目錄
在這裏插入圖片描述
修改/opt/anaconda/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc文件(這裏應該是前面查詢的目錄下的matplotlibrc文件),修改如下:

font.family         : sans-serif        

# 這裏其實在最前面加上SimHei即可
font.sans-serif     : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif 
axes.unicode_minus,將True改爲False,作用就是解決負號'-'顯示爲方塊的問題

然後重啓。

  • 然後在你畫圖的代碼中,加入這幾行,即可。
import matplotlib.pyplot as plt
font_name = 'SIMHEI' 
plt.rcParams['font.family'] = ['SimHei'] #用來正常顯示中文標籤 
plt.rcParams['axes.unicode_minus']=False #用來正常顯示負號

最終效果
在這裏插入圖片描述

參考鏈接

Sail的博客

發佈了46 篇原創文章 · 獲贊 16 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章