2016-12-06 62 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

對於任何困惑感到抱歉,謝謝你回答我的問題,你是一個拯救生命的人 –

相關問題