- 一、自定义柱状图
示例代码:
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体(解决中文无法显示的问题)
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像时负号“-”显示方块的问题
# 该函数的作用就是在图表上给柱状图的每个柱添加高度
def autolabel(rects):
# 循环取出每一个柱进行操作
for rect in rects:
height = rect.get_height()
plt.text(rect.get_x()+rect.get_width()/2,1.03*height,"%s"%float(height))
plt.xlabel('性别') # X轴说明信息
plt.ylabel("人数") # Y轴说明信息
# 设置指定坐标的刻度值:0刻度男,1刻度为女
plt.xticks((0,1),('男','女'))
plt.title("性别比例分析")
# 绘制柱形图
rects = plt.bar(x=(0,1),height=(1,0.5),width=0.4,align='center',yerr=0.0001)
plt.legend((rects,),('图例',))
autolabel(rects)
plt.show()
注意在使用matplotlib画图的时候最好加上这几行代码解决中文显示问题
from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体(解决中文无法显示的问题) mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像时负号“-”显示方块的问题
plt.bar()函数:
bar()函数:绘制柱状图 本示例代码中用到了bar()函数的五个参数: - x:可以直接放数字,也可以放一个元组,用于确定左边缘X的值 - height:可以直接放数字,也可以放一个元组,用于确定柱状图的高度 - width:设置柱状图的宽度 - align:让文字居中 - yerr:为了避免绘制矩形柱状图紧靠顶部(最好能够空出一段距离), 此时可通过bar()的属性参数yerr来设置(一旦设置,对应矩形上面就会有一条竖线)。当把yerr值设置得很小时,空白就自动出现了。
plt.text()函数:
text():用于在图表上显示文本 本示例代码中用到了plt.text()的三个参数,分别是:X坐标,Y坐标和要显示的文字
plt.legend()函数:
plt.legend():添加图例 它的参数必须是元组,即使只有一个图例也必须是元组,否则显示不正确。
代码运行结果如下:



