How do I get rid of custom data tip?
    43 views (last 30 days)
  
       Show older comments
    
I have this script which adds a custom data tip to my scatter3 graph :
function txt = displayCoordinates(~, info)
    global  clickedCIE_L clickedCIE_a clickedCIE_b;
    clickedCIE_L = info.Position(3); % 69 
    clickedCIE_a = info.Position(1); % -56
    clickedCIE_b = info.Position(2); % 46
    Hrad = mod(atan2(clickedCIE_b,clickedCIE_a),2*pi); % 2.4539
    hueAngle = Hrad*180/pi; % 140 degrés
    chroma = sqrt(clickedCIE_a.^2 + clickedCIE_b.^2); % 72
    txt = {sprintf('CIE L: %.0f', info.Position(3)), sprintf('CIE a: %.0f', info.Position(1)), sprintf('CIE b: %.0f', info.Position(2)), sprintf('CIE c : %.0f ', chroma), sprintf('CIE h : %.0f °', hueAngle)    };
end
It works great, producing this output :

Problem is, this custom data tip does not have any handle I can see? So I can't make the data tip disappears programmatically when it is no longer needed? Suppose I click on the pushbutton 'Plot2D' : I wish there was away to delete the data tip....
Any help is appreciated.
0 Comments
Answers (1)
  Voss
      
      
 on 19 Mar 2022
        
      Edited: Voss
      
      
 on 19 Mar 2022
  
      If feasible, you can store the handle to the DataTip when it is created (Option 1 below).
If not, you can find it using findobj() (Option 2 below).
Then delete() it.
h = plot(1:10);
h.DataTipTemplate.DataTipRows(1).Label = 'Custom X';
h.DataTipTemplate.DataTipRows(2).Label = 'Custom Y';
% Option 1: store the handle to the DataTip when it is created:
dt = datatip(h)
% Option 2: find the DataTip after it is created, using findobj():
dt = findobj(gca(),'Type','DataTip')
% now that you have the handle, delete the DataTip:
delete(dt);
5 Comments
  Voss
      
      
 on 20 Mar 2022
				Well, maybe try putting these lines:
dt = findobj(gca(),'Type','DataTip');
delete(dt);
Or more succinctly:
delete(findobj(gca(),'Type','DataTip'));
wherever you want to delete any DataTips from the current axes, and see if that works.
See Also
Categories
				Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!