让我们认为我们有一个数字:
figure(1),plot(1:10);hold on;plot(2:2:45)
并保存这个数字。当我以 *.*fig 格式打开它时,我想从图(1)中获取信息,上面有多少图。图 1 上有 2 个图,但我想自动获得它。
您可以使用类似的命令
numplots = numel(get(gca,'Children'))
或者如果您正在寻找多少行:
numlines = numel(findobj(gcf,'Type','line'))
例如,执行此操作的函数可能是:
function NumSons = sons_of_figure
[filename,pathname]=uigetfile('*.fig','Select File to Open');
if isequal(filename,0) || isequal(pathname,0)
return
else
open(fullfile(pathname,filename));
NumSons = numel(get(gca,'Children'));
end
end
要更改线条的颜色,您需要知道(或找到)它的句柄。在您的示例中,您可以在每一行关联一个名称:
figure(1),plot(1:10,'DisplayName','one');hold on;plot(2:2:45,'DisplayName','two')
然后保存并加载图形。如果您想将名为“one”的第一行的颜色更改为红色:
line1 = findobj(gcf,'DisplayName','one')%line1 is the handle to the line you want
set(line1,'color','r')