12

私は実際にこれを行う方法を試していませんが、すでに存在する2つのプロットを1つのグラフにマージする方法があるかどうか疑問に思っています。どんな入力でも大歓迎です!

4

2 に答える 2

8

これは、複数のプロットからデータを抽出して結合するために必要なすべてのステップを実行する、完全な最小限の作業例です。

import numpy as np
import pylab as plt

# Create some test data
secret_data_X1 = np.linspace(0,1,100)
secret_data_Y1 = secret_data_X1**2
secret_data_X2 = np.linspace(1,2,100)
secret_data_Y2 = secret_data_X2**2

# Show the secret data
plt.subplot(2,1,1)
plt.plot(secret_data_X1,secret_data_Y1,'r')
plt.plot(secret_data_X2,secret_data_Y2,'b')

# Loop through the plots created and find the x,y values
X,Y = [], []   
for lines in plt.gca().get_lines():
    for x,y in lines.get_xydata():
        X.append(x)
        Y.append(y)

# If you are doing a line plot, we don't know if the x values are
# sequential, we sort based off the x-values
idx = np.argsort(X)
X = np.array(X)[idx]
Y = np.array(Y)[idx]

plt.subplot(2,1,2)
plt.plot(X,Y,'g')
plt.show()

ここに画像の説明を入力してください

于 2012-10-03T14:36:20.613 に答える
1

Matplotlibを使用していると仮定すると、Figureのデータを次のようにNX2numpy配列として取得できます。

gca().get_lines()[n].get_xydata()
于 2012-10-03T14:27:14.793 に答える