Programmatically hiding 'linkdata' information bar

1 次查看(过去 30 天)
When linkdata is activated for a figure (either by function call or by GUI button), an information bar is shown just below the toolbar.
It is possible to hide the information bar using the GUI, but how do hide it programmatically?

采纳的回答

Chris
Chris 2011-5-31
Had the same problem, you can control it using the datamanager.linkplotmanager:
dpm = datamanager.linkplotmanager;
dpm.Figures(1).Panel.close
The problem is that the datamanager.linkplotmanager figures don't reference the figure handle, so if the first plot you link data on is figure 5, in the datamanager it is listed as dpm.Figures(1). And it will remain dpm.Figures(1) until you close figure 5. I ended up simply making a for loop to close all the Panels on all my plots with linkdata on.
dpm = datamanager.linkplotmanager;
for xx = 1:1:length(dpm.Figures)
dpm.Figures(xx).Panel.close
end
  1 个评论
Martin
Martin 2011-7-6
Brilliant!
Ended up using a bit shorter notation:
% remove that annoying "linkdata" panel that pops up, on all figures
dpm = datamanager.linkplotmanager;
cellfun(@(x)x.close, {dpm.Figures.Panel});

请先登录,再进行评论。

更多回答(1 个)

Connor
Connor 2017-11-9
As of 2017b, the above no longer works. For anyone else trying to accomplish this, you must now use the .getInstance() method of the datamanager.LinkplotManager class to return the handle, then close from there:
h = datamanager.LinkplotManager.getInstance()
h.Figures(1).Panel.close

类别

Help CenterFile Exchange 中查找有关 Interactive Control and Callbacks 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by