在ubuntu 下利用matplotlib 繪圖的時(shí)候,圖像上中文無(wú)法顯示。以下是我的解決辦法:
1. 下載中文字體simhei.ttf, 網(wǎng)址為http://fontzone.net/download/simhei
2. 搜索 matplotlib 字體的安裝位置
1
|
$ locate -b '\mpl-data' |
會(huì)得到 這個(gè)路徑/usr/share/matplotlib/mpl-data下面有fonts/ttf這個(gè)目錄,進(jìn)入這個(gè)目錄,把剛才下載的simhei.ttf 字體復(fù)制到這個(gè)目錄下,注意權(quán)限和歸屬是否與其它字體一致,我的是歸于root用戶的,所以用root 用戶復(fù)制過(guò)來(lái)。
3. 刪除當(dāng)前用戶matplotlib 的緩沖文件(如果沒(méi)有直接進(jìn)入第四步)
1
2
|
$ cd ~/.cache /matplotlib $ rm -rf *.* |
4.代碼中調(diào)整字體
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#!/usr/bin/env python #coding:utf-8 """a demo of matplotlib""" import matplotlib as mpl from matplotlib import pyplot as plt mpl.rcParams[u 'font.sans-serif' ] = [ 'simhei' ] mpl.rcParams[ 'axes.unicode_minus' ] = False years = [ 1950 , 1960 , 1970 , 1980 , 1990 , 2000 , 2010 ] gdp = [ 300.2 , 543.3 , 1075.9 , 2862.5 , 5979.6 , 10289.7 , 14958.3 ] #創(chuàng)建一副線圖,x軸是年份,y軸是gdp plt.plot(years, gdp, color = 'green' , marker = 'o' , linestyle = 'solid' ) #添加一個(gè)標(biāo)題 plt.title(u '名義GDP' ) #給y軸加標(biāo)記 plt.ylabel(u '十億美元' ) plt.show() |
- 其中#coding:utf-8 說(shuō)明文件編碼格式
- mpl.rcParams[u'font.sans-serif'] = ['simhei'] 用simhei 字體顯示中文
- mpl.rcParams['axes.unicode_minus'] = False 這個(gè)用來(lái)正常顯示負(fù)號(hào)
- plt.title(u'名義GDP')這里的u 最好不要少
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:http://blog.csdn.net/jeff_liu_sky_/article/details/54023745