我已经将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()
数字:
和该图应该看起来像这样(相反)
任何想法如何纠正它?
使用追加创建要绘制的所有文件(线)的单个系列。因此,它们连接在一起成为一条直线。请参阅附录中的pandas documentation。
您可以将X创建为列表,然后循环遍历列表以绘制在同一图形上,而不是将X创建为系列。类似于this