python读取excel表格特定几列做折线图

因为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, label='Actual Load1')
plt.plot(time, decline, linewidth=1, label='Compensation Decline1')
plt.plot(time, boost, linewidth=1, label='Compensation Boost1')

plt.xlabel('Time/h', size=18)
plt.ylabel('Load/KW', fontsize=18)  #size和fontsize都可以用来设置字体大小
xtick = [0,4,8,12,16,20,24]  #横坐标指定刻度
plt.xticks(xtick)
plt.legend()
plt.savefig('time_load.jpg',dpi=600,format='jpg')  #存储图片
plt.show()
    原文作者:卢卡斯-喵
    原文地址: https://blog.csdn.net/weixin_42149188/article/details/120522153
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞