最近在实现数据可视化将数据以饼图方式实现时发现汉字会出现乱码的现象,找了好久的资料,尝试了很多方法终于找到一个我认为比较简便的方法,特写此博客记录一下,方便以后查阅。
可以使用matplotlib rcParams:
可以在python脚本中动态更改默认的rc设置,或者从python shell以交互方式更改。所有rc设置都存储在一个称为字典的变量中matplotlib.rcParams
,该变量对于matplotlib包是全局的。rcParams可以直接修改。(具体内容可以参考https://matplotlib.org/tutorials/introductory/customizing.html)
代码如下:
import matplotlib.pyplot as plt
import matplotlib
fig=plt.figure()
labels=['陆地','海洋']
data=[29,71]
#解决汉字乱码问题
matplotlib.rcParams['font.sans-serif']=['SimHei'] #使用指定的汉字字体类型(此处为黑体)
plt.pie(data,labels=labels,autopct='%1.2f%%') #autopct='%1.2f%%'输出各块饼状图所占百分比并保存两位小数
plt.title('陆地和海洋的面积比')
plt.show()
plt.show()
运行结果如下: