有没有办法从现有轴中删除单个图?

Dor*_*oom 11 matlab plot axes

有没有一种简单的方法可以从一组轴上移除绘制的线而不清除轴上的其他所有内容?我正在尝试使用包含多个数据集的列表框来实现GUI.我可以让回调函数绘制所选数据,但是当我取消选择数据集时,我不确定如何"取消删除"它.有任何想法吗?

gno*_*ice 17

如果将句柄保存到创建的图形对象,则可以在其上调用DELETE将其从图中删除:

hLine = plot(...);  %# Create a line with PLOT
delete(hLine);      %# ...and delete it
Run Code Online (Sandbox Code Playgroud)

或者,如果您没有将句柄保存在变量中,则可以使用FINDOBJ搜索它,然后在找到它时将其删除.

如果您实际上不想删除它,只需打开和关闭该行的可见性,您可以相应地设置图形对象的'Visible'属性:

set(hLine,'Visible','off');  %# Make it invisible
set(hLine,'Visible','on');   %# Make it visible
Run Code Online (Sandbox Code Playgroud)

  • @Doresoom,`delete plothandle`相当于`delete('plothandle')` (3认同)