我在 Matlab 编辑器中编写了一些代码,它有大约 30 个数字。所以,当我发布它时,它会打开 30 个数字的窗口,这很烦人。如何防止它打开窗口,但将数字保留在已发布的窗口中?
我试过了close(figure)
,但是这些数字没有显示在发布的窗口上。
提前致谢
最简单的事情是close all
当你完成了这些数字。我不确定这是否可以成为脚本的一部分,或者您是否必须在发布后手动运行它。
至少该plot
命令具有控制图形可见性的选项。所以你会写类似
h = plot(... , 'Visible', 'off');
我希望这些也适用于其他图形对象,我知道它适用于与anova
.
编辑:上面隐藏了情节,但没有隐藏图形本身。要在创建后立即隐藏图形,请执行
set(gcf, 'Visible', 'off')
matlab 中的close函数可以满足您的需求。阅读文档以获取更多详细信息
要同时关闭所有地块,您可以使用
close all
要关闭名为“fig5”的特定图形(例如),您可以使用
fig5 = scatter(x, y);
close(fig5)
如果您只使用“关闭”,则只有最近的数字会关闭。
概述解决方案,
第一步是使用处理程序进行绘图。使用fig=图;其中 figa 现在是 figure 的处理程序。如果你使用多个,比如你说的 30,数字,那么 figa=figure;figb=figure.......figad=figure; 第二步; 将这些数字用于您想要绘制的任何内容;必须通过撤销图形来完成,例如图形(figa);保持;情节(x1,y1)图形(figb);保持;情节(x2,y2)....等30个情节第三set 是保存所有数字 saveas(figa,'1.fig');saveas(figb,'2.fig');....... 以此类推 30 个图;第四步是从你的监视器关闭所有地块;第五步是重新打开这些数字 openfig('1.fig');openfig('2.fig');...... 30 个无花果
一个建议:使用 excel 创建这个长长的图形名称列表,并更好地使用单独的 .m 文件,以避免增加您的 matlab 主代码。
Perhaps you want hold on which will plot all of the graphs to the same window?
您可以使用 subplot(m,n,p) 在同一图形窗口上绘制多个图形。