关于matlab在for循环中画图
forj=1:14a(j,1:BLOCK)=s(((j-1)*BLOCK+1):(j*BLOCK));figure;subplot(1,2,1);[f,X]=hist(a...
for j=1:14
a(j,1:BLOCK)=s(((j-1)*BLOCK+1):(j*BLOCK));
figure;
subplot(1,2,1);
[f,X]=hist(a(j,1:BLOCK),xout);
hist(a(j,1:BLOCK),xout);
subplot(1,2,2);
[fina,aii] = ksdensity(a(j,1:BLOCK));
plot(ai,fina,'*r');
y=y+f;
end
在这段程序中,我需要将导入的s文件中的数据分块画出频数直方图,每块中有100个数据,即为BLOCK的值,我一共有1400个数据,所以j=1:14,想来应该有14张图啊,但是为什么这段程序出来只有1张图呢,求高手讲解一下,菜鸟谢谢啦! 展开
a(j,1:BLOCK)=s(((j-1)*BLOCK+1):(j*BLOCK));
figure;
subplot(1,2,1);
[f,X]=hist(a(j,1:BLOCK),xout);
hist(a(j,1:BLOCK),xout);
subplot(1,2,2);
[fina,aii] = ksdensity(a(j,1:BLOCK));
plot(ai,fina,'*r');
y=y+f;
end
在这段程序中,我需要将导入的s文件中的数据分块画出频数直方图,每块中有100个数据,即为BLOCK的值,我一共有1400个数据,所以j=1:14,想来应该有14张图啊,但是为什么这段程序出来只有1张图呢,求高手讲解一下,菜鸟谢谢啦! 展开
1个回答
展开全部
把figure;改为figure(j);
不然每画一遍之前的就被覆盖代替了。
相关语法是figure(h),其中h表示画的图形对象的句柄,若该句柄已存在,相应的图形框则被设为当前图形对象;若此句柄不存在,则将以该值为句柄,新建一个图形对象。另h需为整数值。
不然每画一遍之前的就被覆盖代替了。
相关语法是figure(h),其中h表示画的图形对象的句柄,若该句柄已存在,相应的图形框则被设为当前图形对象;若此句柄不存在,则将以该值为句柄,新建一个图形对象。另h需为整数值。
追问
谢谢您的回答!因为我在循环之前还有两张图,因此我改成了j+2,但是包括前面的还是只有三张图,还是不行,这是为什么呢?
追答
循环中生成的那张图正确吗,是不是有其他错误出现导致循环被中断了?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |