ubuntu系统下matplotlib中文乱码问题的解决方法
在ubuntu下利用matplotlib绘图的时候,图像上中文无法显示。以下是我的解决办法:
1.下载中文字体simhei.ttf,网址为http://fontzone.net/download/simhei
2.搜索matplotlib字体的安装位置
$locate-b'\mpl-data'
会得到这个路径/usr/share/matplotlib/mpl-data下面有fonts/ttf这个目录,进入这个目录,把刚才下载的simhei.ttf字体复制到这个目录下,注意权限和归属是否与其它字体一致,我的是归于root用户的,所以用root用户复制过来。
3.删除当前用户matplotlib的缓冲文件(如果没有直接进入第四步)
$cd~/.cache/matplotlib $rm-rf*.*
4.代码中调整字体
#!/usr/bin/envpython #coding:utf-8 """ademoofmatplotlib""" importmatplotlibasmpl frommatplotlibimportpyplotasplt 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] #创建一副线图,x轴是年份,y轴是gdp plt.plot(years,gdp,color='green',marker='o',linestyle='solid') #添加一个标题 plt.title(u'名义GDP') #给y轴加标记 plt.ylabel(u'十亿美元') plt.show()
- 其中#coding:utf-8说明文件编码格式
- mpl.rcParams[u'font.sans-serif']=['simhei']用simhei字体显示中文
- mpl.rcParams['axes.unicode_minus']=False这个用来正常显示负号
- plt.title(u'名义GDP')这里的u最好不要少
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。