Добавьте диаграмму, чтобы преуспеть с данными из нескольких листов, используя Python - PullRequest
1 голос
/ 23 октября 2019

У меня более 60 листов с одинаковыми столбцами (время, данные1, данные2, данные3) на всех листах. Я хотел бы построить график с гладкой линией рассеяния xy для всех листов по сравнению с другими столбцами с данными со всех листов в одном графике. Какой самый эффективный способ сделать это? Я пытался

xl=pd.ExcelFile(f_o)
xl_sheets = []
for sheet in xl.sheet_names:
    xl_sheets.append(xl.parse(sheet))
    dfc = pd.concat(xl_sheets)
print dfc.shape
time_df=dfc['UTCTime']
for i in list(dfc.columns):
    print i
    time.sleep(5000)
    if i!='UTCTime':
        ydata=dfc[i]
        print ydata.head()
        xlf.plot(time_df,ydata)     
    else:
        continue    
plt.show()

1 Ответ

0 голосов
/ 23 октября 2019

Вот как я поступлю с моими любимыми инструментами.

импорт

from pathlib import Path
import pandas as pd
import matplotlib.pyplot as plt

Получение данных

Для нескольких файлов

all_df = []
for excel in Path("path/to/files").iterdir():
    all_df.append(pd.read_excel(excel))
df = pd.concat(all_df)

Для нескольких листов в одном файле

df = pd.read_excel("file.xlsx", sheet_name=None) 

График данных

for column in df.columns:
    if column != "Time" :
        df.plot.scatter(x="Time", y=column)
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...