我正在寻找合并两个Matlab图的方法。我有每个图的图形文件如fig1.fig和fig2.fig一个图包含一个特定范围运行的图,例如1到100,另一个图包含第一个图的延续,例如101到200。这些情节需要大约8个小时,所以我不想重新绘制它们。有没有简单的方法来合并这两个图?
答案 0 :(得分:6)
听起来您想要加入数据,因此您需要从每个图中提取x和y数据。如果您有线图,则可以加载第一个.fig文件
e.g。
然后输入
a = gca
handles = findobj(a)
isLine = strcmp(get(handles, 'Type'), 'line')
XData1 = get(handles(isLine), 'XData')
YData1 = get(handles(isLine), 'YData')
这将从您的第一个图中提取您的线的x和y数据。
现在关闭所有数据并加载第二个图:
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')