Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 多线图matplotlib_Python_Csv_Plot_Graph_Line - Fatal编程技术网

Python 多线图matplotlib

Python 多线图matplotlib,python,csv,plot,graph,line,Python,Csv,Plot,Graph,Line,我试图将3个相同类型的数据集用三条不同的线绘制到一个线形图上。所有数据集共享相同的x类型“时间”和y类型“测量”。但是,对于每个数据集中的x和y类型,每个数据集的长度都不同。如何使用matplotlib创建三线图 每个数据集都从csv文件中提取,并以列表的形式结束。这适用于每个数据集的x和y组件。以下是我收集数据的方式: # Data Set 1 with open('File1.csv', 'r') as f: data_1 = list(reader(f)) measuremen

我试图将3个相同类型的数据集用三条不同的线绘制到一个线形图上。所有数据集共享相同的x类型“时间”和y类型“测量”。但是,对于每个数据集中的x和y类型,每个数据集的长度都不同。如何使用matplotlib创建三线图

每个数据集都从csv文件中提取,并以列表的形式结束。这适用于每个数据集的x和y组件。以下是我收集数据的方式:

# Data Set 1
with open('File1.csv', 'r') as f:
     data_1 = list(reader(f))

measurement_1 = [i[3] for i in data_1[1::]]
time_1 = [parser.parse(i[0]) for i in data_1[1::]]

measurement_1, time_1 = zip(*[(i, j) for i, j in zip(measurement_1, time_1) if i !=''])

measurement_1 = list(measurement_1)
time_1 = list(time_1)

# Data Set 2
with open('File2.csv', 'r') as f:
     data_2 = list(reader(f))

measurement_2 = [i[3] for i in data_2[1::]]
time_2 = [parser.parse(i[0]) for i in data_2[1::]]

measurement_2, time_2 = zip(*[(i, j) for i, j in zip(measurement_2, time_2) if i !=''])

measurement_2 = list(measurement_2)
time_2 = list(time_2)

# Data Set 3
with open('File3.csv', 'r') as f:
     data_3 = list(reader(f))

measurement_3 = [i[3] for i in data_3[1::]]
time_3 = [parser.parse(i[0]) for i in data_3[1::]]

measurement_3, time_3 = zip(*[(i, j) for i, j in zip(measurement_3, time_3) if i !=''])

measurement_3 = list(measurement_3)
time_3 = list(time_3)

由于您没有提供参考数据框架,这里是一个广泛的框架

ax = df.plot()
df2.plot(ax = ax)
df3.plot(ax = ax)

plt.show()

绘制每个数据集的x和y值:
plt.Plot(x1,y1,x2,y2,x3,y3)
@wwii谢谢,考虑到数据集的长度相差悬殊,我不认为这会如此微不足道。但它工作得很好。谢谢!:)