使用Python在一张图中绘制多个CSV / Excel文件的图

问题描述 投票:0回答:1

我已经将csv文件导入python。附加的问题是当我绘制它时,第二个文件不是从顶部开始,而是从第一个文件的最后一点开始。在这里,让我向您展示代码和图。

import os
import pandas as pd
import matplotlib.pyplot as plt

### Set your path to the folder containing the .csv files
PATH = "D:\\TUGAS\\TA\\TUYS\\Data TA dari Garuda\\Format CSV\\Hard Landing\\Format 1"

### Fetch all files in path
fileNames = os.listdir(PATH)

### Filter file name list for files ending with .csv
#fileNames = [file for file in fileNames if '.csv' in file]
TES = pd.Series([])
X = pd.Series([])

### Loop over all files
for file in fileNames:

### Read .csv file and append to list
    df = pd.read_csv( file, skiprows=[0,1,3,4])
    df.columns = [column.replace(" ","_") for column in df.columns]
    df.columns = [column.replace("/","_") for column in df.columns]
    X = X.append(df)

TES = TES.append(X)
### Create line for every file
plt.plot(TES.DISTANCE_TO_THRESHOLD, TES.ALTITUDE_ABOVE_FIELD_ELEV)
plt.ylabel("Altitude (ft)")
plt.xlabel("Distance from threshold (nm)")
plt.xlim(5,-2)
plt.ylim(-50,1000)
### Generate the plot
plt.show()

数字:

enter image description here

和该图应该看起来像这样(相反)

enter image description here

任何想法如何纠正它?

python excel csv plot append
1个回答
0
投票

使用追加创建要绘制的所有文件(线)的单个系列。因此,它们连接在一起成为一条直线。请参阅附录中的pandas documentation

您可以将X创建为列表,然后循环遍历列表以绘制在同一图形上,而不是将X创建为系列。类似于this

© www.soinside.com 2019 - 2024. All rights reserved.