我希望从单个图中清除所有应用程序数据,而不使用各个应用程序数据变量的名称。
MATLAB中是否有任何功能可以执行上述操作?
答案 0 :(得分:2)
不,你不能以一种简单的方式做到这一点。
图形的应用程序数据用于存储MATLAB本身的大量内容(例如图形的缩放和平移状态),而不仅仅是您自己设置的内容 - 所以只需"删除"这一切都是个坏主意。
您可以使用getappdata(f)
获取完整的应用程序数据集,其中f
是数字的句柄(而不是更常见的getappdata(f, 'varname')
,这将获得特定的变量您存储在应用程序数据中。)
结果是一个结构,您可以浏览字段名称并删除您存储的任何内容。
为了简化这一过程,您可以为存储的任何变量的名称使用一致的前缀。然后,只需浏览字段名称,并为以前缀开头的任何字段调用rmappdata
。