2 つの Matlab プロットをマージする方法を探しています。それぞれの図ファイルを fig1.fig と fig2.fig として持っています。1 つの図には、1 から 100 などの特定の範囲で実行されるプロットが含まれ、もう 1 つの図には、101 から 200 などの最初のプロットの続きが含まれます。これらのプロットには約 8 時間かかるため、再プロットしたくありません。これら 2 つのプロットをマージする簡単な方法はありますか?
質問する
6940 次
1 に答える
7
データを結合したいように聞こえるので、各プロットから x と y のデータを抽出する必要があります。ライン プロットがある場合は、最初の .fig ファイルを読み込むことができます
例えば
次に入力します
a = gca
handles = findobj(a)
isLine = strcmp(get(handles, 'Type'), 'line')
XData1 = get(handles(isLine), 'XData')
YData1 = get(handles(isLine), 'YData')
これにより、最初のプロットから線の x および y データが抽出されます。
すべての Figure を閉じて、2 番目のプロットを読み込みます。
a = gca
handles = findobj(a)
isLine = strcmp(get(handles, 'Type'), 'line')
XData2 = get(handles(isLine), 'XData')
YData2 = get(handles(isLine), 'YData')
マージされたプロットを次のようにプロットできるようになりました。
figure
plot([XData1 XData2], [YData1 YData2])
title('mergedPlot')
于 2013-05-31T07:14:59.550 に答える