matplotlib:折线图的绘制

一、matplotlib绘图三部曲

(1)建立画布

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

(3)绘图展现

二、折线图的绘制

(1)导入模块

import matplotlib.pyplot as plt
import numpy as np

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

(2)建立画布

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

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

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

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

  加入上面两行代码,使其可以显示中文和符号blog

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

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

x = np.arange(1, 6) y_max = np.array([13, 15, 14, 17, 16]) y_min = np.array([1, 2, 4, 5, 2])

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

  • 绘制折线图
plt.plot(x, y_max, color='r', linestyle=':', linewidth=1.2, marker="*", markersize=7, markerfacecolor='b', markeredgecolor='g') plt.plot(x, y_min, color='b', linestyle='-.', linewidth=1.2, marker="o", markersize=7, markerfacecolor='y', markeredgecolor='r')

  使用plot()方法绘制折线图,相关参数有color:线的颜色,linestyle:线型,linewidth:线的宽度,marker:点的形状,markersize:点的大小,markerfacecolor:点的填充颜色,markeredgecolor:点的边缘颜色unicode

  • 增长标题
plt.title("北京将来5天气温走势图")

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

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

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

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

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

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

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

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

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

  • 增长图例
plt.legend(["最高温", "最低温"], loc=2)

  增长图例的目的是让人可以更好的分别出每条折线分别表明什么,参数loc用于设置图例的所在位置

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

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

  • 保存图片
plt.savefig("./将来5天北京气温走势图.png")

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

(4)绘图展现

plt.show()

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

三、最终效果展现

 四、折线图的特色

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

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

  优势:

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

  缺点:

    • 每张图上不适合展示较多的折线图
相关文章
相关标签/搜索