Matplotlib:在圖像上用中文進行標記時,不能顯示中文,顯示爲方框

首先,博主的系統環境如下:

Win10 1709  教育版

Anaconda3-5.0.1-Windows-x86_64.exe

Python 3.6.3

Matplotlib 2.1.0

最近需要用中文在圖像上註釋圖像的標籤,沒想到用Matplotlib繪製標籤時候居然顯示不出來,全部顯示爲方框。

在網上搜索了一下,基本都是說用本地計算機C盤的字體來設置,但是這個方法我這邊沒有實現出來~~~但是基本可以確定是因爲字體的關係,遂查看了pyplot能否更改字體,很不幸,並沒有看到設置字體的屬性。

故查閱了Matplotlib的官方函數API,看一下是否能夠解決這個問題:

Matplotlib.pyplot官方API

打開網站可以看到pyplot的各個函數,如下:

其中text函數是用來向圖片中加文本註釋的,但是text函數的參數中卻並沒有看到設置字體的參數~~~點擊該函數:

可以看到txet函數還闊以接受Text的函數的參數,故繼續點擊如下:

可以看到,這時出現了我們想要的fontproperties屬性,因爲我們只需要使得該屬性能夠顯示中文即可!我這邊是設置成了黑體(SimHei),成功解決!如下所示:

原代碼:

annotation.text(x, y + 8, caption, color='b', size=11)

替換爲:

annotation.text(x, y + 8, caption, color='b', size=11, fontproperties='SimHei')

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章