How do I pre-select the "Data Tips" button when creating figure?

How do I pre-select the data tips button when a figure is created? Currently I need to hover the mouse cursor over the figure for the buttons to show up then manually click the data tips button.
How do I make this happen automatically, when the figure is created? What is the general method to programmatically pre-click any of the button shown here?
Matlab version: 9.11.0.1873467 (R2021b) Update 3

4 comentarios

I know this is possible with zoom. You could look at the related function section at the bottom of that documentation page to see if this is mentioned there.
@Rik looks like there is a datatip command but it does not go into the same mode as the datatip toolbar button
Do you have specific points you want to have the data-tip for?
@Dyuman Joshi No I just want that data tip button already pressed when the figure is created

Iniciar sesión para comentar.

 Respuesta aceptada

Hi mahaju,
I understad that you want to select the programmatically the buttons present in the toolbar (specifically Data Tip).
‘findall’ function could be used to get handle of the Toolbar in the figure. Then you can use that handle to access any button on the Toolbar. You can refer to the following documentation for more details on findall: Find all graphics objects - MATLAB findall - MathWorks India
The following script can help you with that:
%Get handle to Toolbar
>> toolbar = findall(f,'Type','ToolBar')
toolbar =
10×1 graphics array:
ToolbarStateButton (Brush Data)
ToolbarStateButton (Data Tips)
ToolbarStateButton (Rotate 3D)
ToolbarStateButton (Pan)
ToolbarStateButton (Zoom In)
ToolbarStateButton (Zoom Out)
ToolbarPushButton (Restore View)
ToolbarPushButton (Save As)
ToolbarPushButton (Copy as Image)
ToolbarPushButton (Copy as Vector Graphic)
%Get handle to Data Tip
>> datatip = toolbar(2)
datatip =
ToolbarStateButton (Data Tips) with properties:
Tooltip: 'Data Tips'
Icon: 'datacursor'
ValueChangedFcn: @(e,d)datacursormode(ancestor(d.Source,'figure'),d.Value)
Show all properties
%Toggle Data Tip between on and off
>> datatip.set('Value','on')

3 comentarios

@Pratyush What is "f" supposed to be in the findall() call?
Rik
Rik el 16 de Oct. de 2023
Editada: Rik el 16 de Oct. de 2023
That looks like it should be the handle to the figure.
Note that you can adapt this code to already select the correct element:
DataTipToolbarElement = findall(f,'Type','ToolBar','Tooltip','Data Tips');
DataTipToolbarElement.set('Value','on')
@Dyuman Joshi figure handle, or gcf

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating, Deleting, and Querying Graphics Objects en Centro de ayuda y File Exchange.

Productos

Versión

R2021b

Etiquetas

Preguntada:

el 16 de Oct. de 2023

Editada:

Rik
el 16 de Oct. de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by