2016-12-06 61 views
-2

我想弄清楚如何获取两个文本文件充满逗号分隔值,并找到他们的平均点。这里的大致我的价值观,我有从我的两个文件:如何获取2个.txt文件并使用python在图上绘制它们?

文件1

1,24.5 

2,24.2 

3,27.3 

..... 

50,25.2 

文件2

1,23.4 

2,23.4 

3,18.9 

..... 

50,27.0 

而且我的代码:

import matplotlib.pyplot as plt 
import numpy as np 

x, y = np.loadtxt('C:\\Users\\user\\Desktop\\data\\input_temperature1.txt', delimiter=',', unpack=True) 
plt.plot(x,y, color='Blue', label='Input temperature 1') 

x, y = np.loadtxt('C:\\Users\\user\\Desktop\\data\\input_temperature2.txt', delimiter=',', unpack=True) 
plt.plot(x,y,color='Red', label='Input temperature 2') 

plt.xlabel('x') 
plt.ylabel('y') 
plt.title('Temperature Comparioson Plot') 
plt.legend() 
plt.show() 

我不知道哪里从这里走或做什么。任何帮助将不胜感激!

+0

如果这个问题是要找到两个数组的平均值,所有matplotlib绘制是无关紧要的,你应该将其删除。 – ImportanceOfBeingErnest

+0

我必须找到y1和y2中每个值的平均值,并将它们绘制在同一个图上,而不是整个事物的总平均值。 –

+0

是的,请参阅我的解决方案,了解如何做到这一点。我的观点是找到一个平均值与绘图无关,并且您似乎知道如何在matplotlib中绘制一个数组,所以您可以摆脱与问题中的matplotlib有关的所有事情。 – ImportanceOfBeingErnest

回答

0

查找两个数组yy2在numpy中的平均值可以用numpy.mean()来完成,如下所示。您可以连接两个数组并计算沿着列轴的平均值。

average = numpy.column_stack((y,y2)).mean(axis=1) 

总共的代码可能是这样的:

import matplotlib.pyplot as plt 
import numpy as np 

x1, y1 = np.loadtxt('C:\\Users\\user\\Desktop\\data\\input_temperature1.txt', delimiter=',', unpack=True) 
plt.plot(x1,y1, color='Blue', label='Input temperature 1') 

x2, y2 = np.loadtxt('C:\\Users\\user\\Desktop\\data\\input_temperature2.txt', delimiter=',', unpack=True) 
plt.plot(x2,y2,color='Red', label='Input temperature 2') 

average = numpy.column_stack((y1,y2)).mean(axis=1) 
plt.plot(x2,average,color='green', label='Average Temperature') 

plt.xlabel('x') 
plt.ylabel('y') 
plt.title('Temperature Comparison Plot') 
plt.legend() 
plt.show() 
+0

对于任何困惑感到抱歉,谢谢你回答我的问题,你是一个拯救生命的人 –

相关问题