python汉字无法显示_python matplotlib plot 数据中的中文无法正常显示的解决办法

原因:matplotlib默认字体并不是中文字体。

解决方法:将某中文字体设为默认首选字体,本文拟将默认字体设为微软雅黑。

环境:win7 x64, python2.7

过程:

在python的安装目录中找到配置文件:%Python_Home%\Lib\site-packages\matplotlib\mpl-data\matplotlibrc,用任意文本编辑器打开。(最好先备份一下)

找到第139行:#font.family, 将其注释去掉,冒号后面的值改为Microsoft YaHei

找到第151行:#font.sans-serif, 将其注释去掉,并将Microsoft YaHei添加到冒号后面的最前面,注意还要再加一个英文逗号(,)

为保险其间,到C:\Windows\Fonts\中找到微软雅黑对应的字体文件msyh.ttf,将其复制到D:\Python32\Lib\site-packages\matplotlib\mpl-data\fonts\ttf\目录下

import pandas as pd

import numpy as np

from pandas import DataFrame,Series

import matplotlib.pyplot as plt

df=pd.read_csv('survey_results2.csv')

df

df1=DataFrame(df)

df2=df1.ix[:,3:13]

df2

result=df2.apply(pd.value_counts).fillna(0)

t=result.T

ax=t.plot(kind='bar')

# labels

ax.set_xlabel(u"问题编号")

ax.set_ylabel(u"学生数量")

# title

ax.set_title(u"总体满意度")

plt.legend([u"不满意",u"一般",u"满意",u"非常满意"])# make legend

plt.show()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值