Effacer les filtres
Effacer les filtres

Can a plot be made to label y-axis in Hex values?

22 vues (au cours des 30 derniers jours)
Art
Art le 7 Mar 2012
Commenté : Walter Roberson le 30 Oct 2015
I am plotting decimal equivalents of 8 and/or 16 bit hex values. Is it possible to label the y-axis in it's hex value? (Other than using yticklabel and manually listing all possible values)

Réponse acceptée

Walter Roberson
Walter Roberson le 7 Mar 2012
set(gca, 'YTickLabel', cellstr(num2str(reshape(get(gca, 'YTick'),[],1),'%02x')) )
This still uses YTickLabel, but it does not manually list all the possible values.
  2 commentaires
Alan
Alan le 29 Oct 2015
This helps. Unfortunately, if I resize any of my graphs after running this, the tick marks get all messed up. That's a reason to not use YTickLabel even though it's not a manual list. Is there another method that would rescale values as appropriate? Or a way to detect a rescale and reapply yticklabel?
Walter Roberson
Walter Roberson le 30 Oct 2015
Note: an axes is not a "container" and does not have a ResizeFcn callback. If you are setting the Position or OuterPosition properties of an axes to resize it, then you should rebuild the labels at that point. You might also be able to set a listener to detect the event.
Note: if you are using zoom or pan, then both of those offer a Post action callback that can be used to rebuild the tick labels.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by