Matlab 将保存的.Fig文件打开为一个图形

Matlab 将保存的.Fig文件打开为一个图形,matlab,Matlab,我有两个保存的图形,图1.fig和图2.fig。我想用不同的颜色将它们绘制在同一个图上进行比较 到目前为止,我设法将它们绘制在同一个图形上,但颜色相同: fig1 = open('figure1.fig'); fig2 = open('figure2.fig'); axis1 = get(fig1, 'Children'); axis2 = get(fig2, 'Children'); for i = 1:numel(axis2) subAxis = get(axis2(i), 'C

我有两个保存的图形,
图1.fig
图2.fig
。我想用不同的颜色将它们绘制在同一个图上进行比较

到目前为止,我设法将它们绘制在同一个图形上,但颜色相同:

fig1 = open('figure1.fig');
fig2 = open('figure2.fig');

axis1 = get(fig1, 'Children');
axis2 = get(fig2, 'Children');

for i = 1:numel(axis2)
    subAxis = get(axis2(i), 'Children');
    copyobj(subAxis, axis1(i));
end

我现在怎样才能改变颜色?简而言之,我无法获得实际信号;我只有
.fig
文件可用

您可以尝试以下方法。使用输出参数调用
copyobj
。它指的是复制对象的控制柄,在您的情况下是轴。您可以更改此轴的背景色,或其封装的信号的颜色

h1 = copyobj(subAxis, axis1(i));  % new handle for the copied object
set(h1, 'Color', 'g');            % change the background color to green
h2 = get(h1, 'Children');         % get the encapsulated handle of the signal within axes
set(h2, 'Color', 'k');            % change the signal to black

为什么不使用编辑模式和鼠标(编辑打印图标)?您可以复制、粘贴、删除图形对象并更改其颜色…因为我有很多文件,我不想手动打开和编辑它们。