matplotlib:柱形图的绘制

1、matplotlib绘图三部曲

(1)创建画布

(2)绘图——包含绘图与图形修饰

(3)绘图展示

2、柱形图的绘制

(1)导入模块

import matplotlib.pyplot as plt
import numpy as np

  将模块导入到脚本中,并更改名字为plt

(2)创建画布

plt.figure(figsize=(8,5), dpi=120)

  使用figure()方法创建画布,figsize=(x,y)参数用于设置画布大小,单位为英寸,dpi参数用于设置图片像素

  matplotlib默认不支持中文和符号和字符

plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False

  加入上面两行代码,使其能够显示中文和符号

(3)绘图——包括绘图与图形修饰

  • 准备横轴和纵轴数据(以未来5天北京气温走势为例)

x = np.arange(1, 6)
y = np.array([13, 15, 14, 17, 16])

  数据一般以数组的形式来表示,这里x指的是横轴上的刻度,y_maxy_min都是纵轴的数据

  • 绘制柱形图
plt.bar(x, y, width=0.5, color="t")

  使用bar()方法绘制折线图,相关参数有width:柱子的宽度,color:柱子的颜色

  • 增加标题
plt.title("北京未来5天天气最高温柱形图")

  使用title()方法为图表增加标题

  • 增加横轴名称
plt.xlabel("日期", verticalalignment="top")

  使用xlabel()方法设置横轴名称,参数verticalalignment:设置名称的位置

  • 增加纵轴名称
plt.ylabel("温度(℃)", rotation=0, horizontalalignment="right")

  使用ylabel()方法设置纵轴名称,参数horizontalalignment:设置名称的位置,rotation:设置名称的旋转角度

  • 修改刻度
xticks = ["今天", "周五", "周六", "周日", "周一"]
plt.xticks(x, xticks)

  使用xticks()方法修改横轴刻度,参数1为原来的刻度,参数2为替换之后的刻度

yticks = np.arange(-6, 34, 3)
plt.yticks(yticks)

  使用yticks()方法设置纵轴刻度,参数yticks为设置后的刻度

  • 增加标注
for i, j in zip(x, y):
    plt.text(i, j + 1, "%d℃" % j, horizontalalignment="center")

  使用text()方法为每一个点增加标注,每次只能设置一个点的标注,因此使用循环,参数1为标注位置的横坐标,参数2位标注位置的纵坐标,参数3为标注的内容,horizontalalignment:设置标注的位置

  • 保存图片
plt.savefig("./未来5天北京天气最高温柱形图.png")

  使用savefig()方法将绘制出的折线图保存为图片,参数为图片的路径+名字

(4)绘图展示

plt.show()

  使用show()方法展示绘制出的图形,不添加任何参数

3、最终效果展示

 4、折线图的特点

  概念:将值标注成点,并将这些点按照某种特定顺序连接起来形成的图称为折线图

  应用场景:数据在一个有序的因变量上的变化,它的特点是反映事物随类别变化的趋势,可以清晰展现数据的增减趋势,增减的速率,增减的规律、峰值等特征

  优点:

    • 能够很好的展现沿某个维度的变化趋势
    • 能够比较多组数据在同一个维度上的趋势
    • 适合展现较大的数据集

  缺点:

    • 每张图上不适合展现较多的折线图

猜你喜欢

转载自www.cnblogs.com/xmcwm/p/11819656.html