matplotlib 02-绘制高级柱状图、多个图

import matplotlib.pyplot as plt
import numpy as np
#解决中文乱码问题
plt.rcParams['font.sans-serif'] = 'Microsoft YaHei'
plt.rcParams['axes.unicode_minus'] = False

一绘制高级柱状图

fig =plt.figure(1)
#1行1列第一个绘图区域
ax1 = plt.subplot(111)

#柱状图数值
data = np.array([15,20,18,25])

#柱状图宽度
width= 0.5
x_bar = np.arange(4)

#绘制柱状图
rect = ax1.bar(x = x_bar,
              height = data,
              width = width,
              color = "lightblue")


#通过rect对象,为每一个柱子添加顶部数值
for rec in rect:
    x=rec.get_x()
    height = rec.get_height()
    print("x:{},height:{}".format(x,height))
    ax1.text(x+0.15,height*1.02,str(height)+"w")
    
 #设置x轴标签
ax1.set_xticks(x_bar)
ax1.set_xticklabels(["第一季度","第二季度","第三季度","第四季度"])
ax1.set_ylabel("销量(单位:万件)")
ax1.set_title("2017年销量季度统计")
ax1.grid(True)
ax1.set_ylim(0,28)

plt.show()

在这里插入图片描述
二 绘制多个图

plt.figure(figsize=(6,6),dpi=80)
plt.figure(1) #创建第一个画板
plt.subplot(211) #将一个画板分割成两行一列共两个绘图区域
plt.plot([1,2,3]) #在两行一列的第一个绘图区域上绘制折线图
plt.subplot(212) #切换到两行一列的第二个绘图区域上
plt.plot([4,5,6])

#创建第二个画板
plt.figure(2)
plt.plot([4,5,6])
plt.title("第二个画板")

#切换到画板1
plt.figure(1)
plt.figure(figsize=(6,6),dpi=80)
plt.figure(1) #创建第一个画板
plt.subplot(211) #将一个画板分割成两行一列共两个绘图区域
plt.plot([1,2,3]) #在两行一列的第一个绘图区域上绘制折线图
plt.subplot(212) #切换到两行一列的第二个绘图区域上
plt.plot([4,5,6])

#创建第二个画板
plt.figure(2)
plt.plot([4,5,6])
plt.title("第二个画板")

#切换到画板1
plt.figure(1)
plt.subplot(211)
plt.title("第一个画板的第一个绘图区域")
plt.subplot(212)
plt.title("第一个画板的第二个绘图区域")

#调整绘图区域之间的距离
plt.tight_layout()
plt.show()

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41520877/article/details/107497221
今日推荐