因为excel数据每一组数据(两列)中,作为纵坐标的第二列共有121个数据,对应的第一列作为横坐标范围为0~24,表格中只有整数值,小数对应位置均为空值,所以令横坐标变量time为一个空列表,通过for循环将0-24分为121个节点所得数字填入列表中,得到完整横坐标值,与纵坐标长度一致。
```python
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_excel('C:/Users/lenovo/Desktop/Data.xlsx') #文件路径
# print(data) #dataframe数据格式
# print(data.keys()) #列名即关键字
sample = 121
long = list(range(0, sample))
time = []
for i in long:
time.append(i/5)
# print(type(time)) #time属于list列表
# print(type(data['Actual Load1'])) #dataframe中每一列为一个series,可切片操作
load = data['Actual Load1'][:sample] #excel读取所有表格,包括未填的表格都读为空值,所以需要切片,取出有效序列长度
decline = data['Compensation Decline1'][:sample]
boost = data['Compensation Boost1'][:sample]
plt.figure(figsize=(10, 7)) #指定图片大小,不写matplotlib也会有默认大小
plt.plot(time, load, linewidth=1,