折线图的概念
(1)标记:折线
(2)必备的视觉通道:拐点的x,y坐标
(3)常见的视觉通道:色彩、宽度、形态(虚实,箭头等)
(4)适用场景:显示随时间或有序类别而变化的趋势、也可以显示数据点表示某个数据值,或者不显示数据点来表示某个类别的数据趋势等。大量应用于分析数据走势和对比关系上。
1.折线图绘画某城市11点到12点每分钟温度变化,温度范围15–18(单线条)
1. 准备数据 x,y
import random #导入随机数库
x=range(60)
y=[random.uniform(15,18) for i in x] #对应每分钟设置一个温度
2. 导入matplotlib库,绘制折线图
import matplotlib
import matplotlib.pyplot as plt #导入画图库
matplotlib.rcParams['font.sans-serif'] = ['SimHei'] # 用黑体显示中文
#创建画布,设置画布大小以及清晰度
plt.figure(figsize=(20,8),dpi=100)
#绘制折线图
plt.plot(x,y)
#修改y轴刻度值,使其显示范围0—40,每隔5度显示一个数值
plt.yticks(range(0,40,5))
#修改X轴刻度,让新刻度与原刻度一一对应
x_lable=["11点{}分".format(i) for i in x]
plt.xticks(x[::5],x_lable[::5])
#让画布添加网格显示
plt.grid(linestyle='--',alpha=0.5)
#添加 X,Y轴标签,图像名称
plt.xlabel('时间')
plt.ylabel('温度')
plt.title("11点到12点每分钟温度变化图")
plt.show()
3.结果:
2.多线条绘制两城市11时到12时温度变化(多线条)
1.准备数据 x_1,y_1,x_2,y_2
import random #导入随机数库
x_1=range(60)
x_2=range(60)
y_1=[random.uniform(15,18) for i in x] #对应每分钟设置一个温度
y_2=[random.uniform(5,10) for i in x]
2. 导入matplotlib库,绘制折线图
import matplotlib
import matplotlib.pyplot as plt #导入画图库
matplotlib.rcParams['font.sans-serif'] = ['SimHei'] # 用黑体显示中文
#创建画布,设置画布大小以及清晰度
plt.figure(figsize=(20,8),dpi=100)
#绘制折线图
plt.plot(x_1,y_1,color='c',linestyle='--',label='城市一')
plt.plot(x_2,y_2,color='b',label='城市二')
#修改y轴刻度值,使其显示范围0—40,每隔5度显示一个数值
plt.yticks(range(0,40,5))
#修改X轴刻度,让新刻度与原刻度一一对应
x_lable=["11点{}分".format(i) for i in x]
plt.xticks(x[::5],x_lable[::5])
#让画布添加网格显示
plt.grid(linestyle='--',alpha=0.5)
#添加 X,Y轴标签,图像名称
plt.xlabel('时间')
plt.ylabel('温度')
plt.title("11点到12点每分钟温度变化图")
#显示图例
plt.legend()
plt.show()