2013-10-21 60 views
0

我正在嘗試在png中創建表格圖形。matplotlib pyplot表與非ASCII數據?

該表中的數據包含非ASCII字符。(想這是中國人或東西)

我傳遞Unicode代碼點(u'hello'),以pyplot,它顯示的字符爲正方形。

+1

什麼背景?作爲標籤,作爲文字,否則?另外:Python版本(2或3)可能與此有關。最後:**向我們顯示您的代碼** – Evert

回答

1

它可能(略)平臺依賴,但我更喜歡使用unicode中文和其他語言。另一件事是,你需要確保matplotlib必須得到必要的字體。您可以在任何需要text的地方執行此操作,但有時不需要使用mathtext

# -*- coding: utf-8 -*- 
import matplotlib.pyplot as plt 
import matplotlib 
zhfont1 = matplotlib.font_manager.FontProperties(fname='/Library/Fonts/Kai.dfont') #I am on OSX. 
s=u'\u54c8\u54c8' #Need the unicode for your Chinese Char. 
plt.text(0.5,0.5,s,fontproperties=zhfont1, size=50) #example: plt.text() 

enter image description here

0

另一種方法是修改文件/ matplotlibrc /你matplotlib系統。

找到這一行

#font.sans-serif

,並在此行中添加字體。

然後您需要將字體文件添加到matplotlib的字體目錄中。

在這裏,我給這兩條路徑:

  1. 〜\應用程序數據\本地\ Enthought \雨棚\用戶\ LIB \站點包\ matplotlib \ MPL-數據
  2. $ HOME.matplotlib \的FontList。緩存

PS:Windows 7的