I have created an image with a custom datatip update function:
h = image([1 2; 3 4]);
f = get(get(h, 'Parent'), 'Parent');
dcm = datacursormode(f);
set(dcm, 'UpdateFcn', @(~, event) num2str(event.Target.CData(event.Position(2), event.Position(1))));
dTip = createDatatip(dcm, h);
dTip.Position = [1 1];
So far, this works as expected. However, when I change the underlying CData:
set(h, 'CData', [100 2; 3 4]);
then the datatip is not automatically updated (datatip value remains at 1). With the standard update function, the datatip window is automatically updated. E.g.:
set(dcm, 'UpdateFcn', '');
set(h, 'CData', [200 2; 3 4]);
The datatip will automatically change to 200.
How can I implement an automatically updating datatip window with a custom datatip function?

 Réponse acceptée

Frank Herzog
Frank Herzog le 26 Avr 2019

2 votes

If anybody else has this problem, this call updates the datatip:
dcm.updateDataCursors;

Plus de réponses (1)

Frank Herzog
Frank Herzog le 19 Oct 2020

0 votes

It seems that this issue is resolved in R2020a. The custom datatip is now automatically updated.

Catégories

En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by