如何利用matplotlib库中的面向对象API绘制折线图和柱形图

 1、折线图的绘制

 首先,我们先来了解一下折线图。折线图是将数据标注成点,并通过直线将这些点按某种顺序连接而成的图表,它以折线的方式形象地反映事物沿某个维度地变化趋势,图中可以清晰地展示数据增减的趋势;而折线图还可以展示数据增减的速率、规律、还有峰值等特征。 接下来,我们将使用matplotlib来进行绘制某地15天的最高气温和最低气温的折线图

1、#首先我们将“日期”这一列的数据作为x轴的数据,将“最高气温”和
#“最低气温”两列的数据作为y轴的数据,使用plot()函数绘制反映出
#最高气温和最低气温趋势的折线图
#导入pyplot模块
import matplotlib.pyplot as plt
2、#导入numpy模块
import numpy as np

其次就是利用x轴和y轴来表示出折线图的数据

#x轴的数据
x = np.arange(1,19)
#y轴的数据
y_man = np.array([32,33,34,34,33,31,30,29,30,29,26,23,21,25,31])#某天气温最高温
y_min = np.array([19,19,20,22,22,21,22,16,18,18,17,14,15,16,16])#某天气温最低温

写好了x轴和y轴的数据后,连续两次调用plot()函数分别绘制两条折线图。

1、plt.plot(x,y_max)
2、plt.plot(x,y_min)

最后调用show()函数进行图表展示

#图表展示
plt.show()

以上图表便是绘制出来的15日折线图趋势,利用折线图的绘制,可以让人一目了然的了解到15日内的最高气温和最低气温,并且也能直观的看到上升和下弹趋势。

        2、柱形图

柱形图是由一系列宽度相等的纵向矩形条组成的图表,它利用矩形条的高度表示数值,以此来反映不同分类数据之间的差异,它比较适用于中小规模数据集的各分类之间比较的场景。

在此绘制中会使用到bar()函数,以下是使用说明

1/bar(y) 创建一个条形图,y 中的每个元素对应一个条形。如果 y 是 m×n 矩阵,则 bar 创建每组包含 n 个条形的 m 个组。​

2/bar(x,y) 在 x 指定的位置绘制条形。

​3/bar(___,width) 设置条形的相对宽度以控制组中各个条形的间隔。将 width 指定为标量值。可以将此选项与前面语法中的任何输入参数组合一起使用。​

​4/bar(___,style) 指定条形组的样式。例如,使用 'stacked' 将每个组显示为一个多种颜色的条形。

​5/bar(___,color) 设置所有条形的颜色。例如,使用 'r' 表示红色条形。

6/​bar(___,Name,Value) 使用一个或多个名称-值对组参数指定条形图的属性。仅使用默认 

7/​bar(ax,___) 将图形绘制到 ax 指定的坐标区中,而不是当前坐标区 (gca) 中。选项 ax 可以位于前面的语法中的任何输入参数组合之前。

8/​b = bar(___) 返回一个或多个 Bar 对象。如果 y 是向量,则 bar 将创建一个 Bar 对象。如果 y 是矩阵,则 bar 为每个序列返回一个 Bar 对象。显示条形图后,使用 b 设置条形的属性。​

以此,我们来绘制一个简单的柱形图,还是一样先导入matplotlib.pyplot和numpy模块,并将它重新命名

#导入pyplot模块
import matplotlib.pyplot as plt
#导入numpy模块
import numpy as np

设置x轴和y轴的数据

#设置x轴的数据
x=np.arange(5)
#设置y轴的数据
y=np.array([10,8,7,11,13])
 

柱形图最重点的:使用pyplot的bar()函数,设置柱形的宽度,快速绘制出柱形图

#柱形的宽度
bar_width = 0.3

使用bar()函数绘制柱形图

#绘制柱形图
#tick_label表示柱形对应的刻度标签,width表示柱形的宽度
plt.bar(x,y,tick_label = ['a','b','c','d','e'],width = bar_width)
#图表展示
plt.show()

这就是折线图和柱形图的大概绘制过程啦!!

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值