让我们考虑以下代码
function [order]=find_order(y,fs);
order=0;
n=length(y);
n1=nextpow2(n);
ndft=2^n1;
for i=1:floor(n/2)
[Pxx,f]=pburg(y,i,ndft,fs);
% subplot(floor(n/2),floor(n/2),i);
%subplot(ndft,ndft,i);
h = figure;
plot(f,Pxx);
title(['order',num2str(i),'i']);
filename = 'mydata';
print(h, '-dpsc', filename);
order(i)=i;
pause(6.21);
end
end
我有一个问题想要而不是在每个迭代情节新图表,用新的替换旧的,所以我该怎么办?请帮助我
答案 0 :(得分:1)
在for循环中,每次迭代h = figure
都需要一个新的数字。如果你真的想保留函数调用,请将它移到for循环外面
function [order]=find_order(y,fs);
order=0;
n=length(y);
n1=nextpow2(n);
ndft=2^n1;
<强> h = figure;
强>
for i=1:floor(n/2)
[Pxx,f]=pburg(y,i,ndft,fs);
% subplot(floor(n/2),floor(n/2),i);
%subplot(ndft,ndft,i);
plot(f,Pxx);
title(['order',num2str(i),'i']);
filename = 'mydata';
print(h, '-dpsc', filename);
order(i)=i;
pause(6.21);
end
end