在matlab中出现新图形之前,如何清除先前的图形?

在matlab中出现新图形之前,如何清除先前的图形?,matlab,Matlab,我已经实现了一个程序,其中代码如下 load('color_0.mat') isosurface(foo,fo); caxis([0.2 0.5]) colorbar grid on; axis equal; colormap default; alpha(0.3); hold on; plot3(35,30,15,'.','Color',[0,0,0],'MarkerSize',15); hold on; % Dorsal Raphe Nucleus (DRN - serotonin,

我已经实现了一个程序,其中代码如下

load('color_0.mat')
isosurface(foo,fo);
caxis([0.2 0.5])
colorbar
grid on; axis equal; colormap default; alpha(0.3);
hold on;  

plot3(35,30,15,'.','Color',[0,0,0],'MarkerSize',15); hold on; % Dorsal Raphe Nucleus  (DRN - serotonin, 5-HT)

xlabel('anterior-posterior (a.u.)'); ylabel('left-right (a.u.)'); zlabel('ventral-dorsal/inferior-superior (a.u.)'); 
grid on;

pause(.5)

load('color_1.mat')
isosurface(foo,fo);
caxis([0.2 0.5])
colorbar
grid on; axis equal; colormap default;  alpha(0.3);
hold on;  

plot3(35,30,15,'.','Color',[0,0,0],'MarkerSize',15); hold on; % Dorsal Raphe Nucleus (DRN - serotonin, 5-HT)

xlabel('anterior-posterior (a.u.)'); ylabel('left-right (a.u.)'); zlabel('ventral-dorsal/inferior-superior (a.u.)'); 
grid on;

通过这种方式,该图形被新图形叠加。如何避免这种情况?通过在两者之间使用clf,工具栏将消失。

由于您使用的是
按住
,因此打印将重叠。在绘图之间插入
暂停
,以便新绘图清除旧绘图。

由于您使用的是
暂停
,因此这些绘图重叠。在绘图之间插入
暂停
,以便新绘图清除旧绘图。

T答案正确。如果您仍然希望使用
按住
,因为您希望保留某些图元,但不保留其他图元,则可以在打印图元时为其指定句柄:

h = plot3(35,30,15,'.','Color',[0,0,0],'MarkerSize',15);
然后使用以下命令清除它:

delete(h)

答案不正确。如果您仍然希望使用
按住
,因为您希望保留某些图元,但不保留其他图元,则可以在打印图元时为其指定句柄:

h = plot3(35,30,15,'.','Color',[0,0,0],'MarkerSize',15);
然后使用以下命令清除它:

delete(h)

有时它有助于在
plot
之后添加
drawnow
,以强制在屏幕上绘制图形的所有内容。

有时它有助于在
plot
之后添加
drawnow
,以强制在屏幕上绘制图形的所有内容。

使用暂停…我现在没有得到任何图形所有。
等值面
未清除上一个绘图。因此,即使
保持
处于
关闭状态
等值面
也会叠加上一个等值面。至于提问者的下一个问题,轴必须被清除。通过使用暂停…我没有得到任何数字。
等值面
没有清除上一个绘图。因此,即使
保持
处于
关闭状态
等值面
也会叠加上一个等值面。至于提问者的下一个问题,斧子必须被清除。