全网云盘资源分享群

python用matplotlib或boxplot作图的时候,中文标注无法正常显示,乱码为小方框的解决办法

第一种

import matplotlib.pyplot as plt
plt.rc("font",family="SimHei",size="22") 

# 生成fig
plt.figure(figsize=(20, 20), dpi=80)
dataPathBj.boxplot(column=['行政面积(K㎡)','户籍人口(万人)','男性','女性','GDP(亿元)','常住人口(万人)'])
效果图

在这里插入图片描述

第二种

from matplotlib import pyplot as plt
font = {'family' : 'MicroSoft YaHei',
        'weight' : 'bold',
        'size'   : 20}
plt.rc("font", **font)

plt.figure(figsize=(20, 20), dpi=80)
pathTj.boxplot(column=['行政面积(K㎡)','户籍人口(万人)','男性','女性','GDP(亿元)','常住人口(万人)'])
效果图

在这里插入图片描述

第三种

import matplotlib
from matplotlib.font_manager import *  
import matplotlib.pyplot as plt
#路径在C:\Windows\Fonts
myfont = FontProperties(fname=r'C:\Windows\Fonts\禹卫书法行书简体.ttf')  #自定义字体
#解决负号'-'显示为方块的问题  
matplotlib.rcParams['axes.unicode_minus']=False  

x=range(11,15)
y=[-1,2,-5,3]

xtick_labels = ["{}岁".format(i) for i in x]
plt.xticks(x,xtick_labels,fontproperties=myfont)
plt.plot(x,y)  
plt.title(u'想要博客还有视频下载交流?博客和视频下载学习交流群:1106112426 满足你的需求,资料都已经上传群文件,可以自行下载!',fontproperties=myfont)  
plt.show()

# 绘制网格
plt.grid(alpha=0.2) 
# 增加标题,坐标描述
plt.xlabel("年龄", fontproperties=myfont)
plt.ylabel("数量(个)", fontproperties=myfont)
# 图形保存到该文件路径下
plt.savefig("pie.png")

效果图

在这里插入图片描述

posted @ 2021-05-08 18:39  颖火虫赵云  阅读(32)  评论(0编辑  收藏  举报  来源
|