In standard axes I am able to change the Exponent property to force scientific notation. In this specific case I have an axes that contains an image overlayed with a colormap, I use a colorbar as a legend to the colormap. I am not able to access the Exponent property of the colorbar through either the parent axes handle nor the colorbar handle.
I found a workaround on Stackoverflow that I can rewrite, but I just wanted to check if I'm missing something obvious. SO Link: Stackoverflow Link
Thank you for any insight.

 Réponse acceptée

Walter Roberson
Walter Roberson le 4 Avr 2018

3 votes

cb = colorbar();
cb.Ruler.Exponent = 2;

3 commentaires

Software Developer
Software Developer le 4 Avr 2018
First of all, thank you very much for the prompt reply, you saved me a lot of time. Secondly, I can't believe how simple that was. I still can't find how the Ruler object relates to the colorbar in the documentation. Is there a good guide for searching the doc for these hidden objects?
Again, thank you very much.
P.S.
Walter Roberson
Walter Roberson le 4 Avr 2018
There are a lot of undocumented properties of graphics objects. Some of them are fairly mystifying, others clear but of no obvious use, and some are useful.
Note: some of the properties the mentioned tool finds can be examined and changed directly, but sometimes you need to use struct() to get at a higher level private handle that you can then set the properties of.
Yair Altman
Yair Altman le 12 Avr 2018
Modifié(e) : Yair Altman le 12 Avr 2018
See https://undocumentedmatlab.com/blog/customizing-axes-rulers - this has been posted way-back in 2014 and some of the fine details have changed since then, but the basic concept remained unchanged.
See the list of related posts at the bottom of that article for many other undocumented ways by which you can customize your plots.

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