title string on vertical colorbar

I want to put a colorbar to the right of a plot; fortunately, MATLAB wants to do that too, so a plain call to colorbar works. However, I'd also like to put a readable title on the colorbar to identify the plotted variable & its units. I tried this
h = colorbar;
set(get(h,'title'),'string','ISCCP Daytime Sc Amount (%)');
MATLAB wants to put this above the colorbar (!) where it runs into the plot title. I can rotate the text
h = colorbar;
set(get(h,'title'),'string','ISCCP Daytime Sc Amount (%)','Rotation',90.0);
but it's still centered up above the vertical colorbar. Trying to calculate a position for it in colorbar-relative coordinates is a real pain. Is there another way to correctly position this metadata alongside the colorbar?

1 Commento

Simple Solution for this.
h = colorbar;
set(get(h,'label'),'string','ISCCP Daytime Sc Amount (%)');
That way, it will no longer be on top of the colorbar but beside it. :)

Accedi per commentare.

Risposte (2)

This is kind of hack, but how about this:
h = colorbar;
ylabel(h, 'foo')

6 Commenti

Igor
Igor il 9 Nov 2012
simplicity is the key of prosperity! perfect answer. good job Patrick
Suene
Suene il 18 Nov 2015
great
noone
noone il 4 Apr 2018
This is genius!!!
This answer is great, but I have one issue.
I have set all labeling of figures to default to using latex as the intepreter. When I follow this example the ylabel does not show up in latex unlesss I do
ylabel(h, 'foo', 'intepreter', 'latex');
I don't want to have to do this manually, so I added
set(groot,'DefaultColorbarYLabelInterpreter','latex')
to my startup.m file. This returns an error
Error using matlab.ui.Root/set
There is no YLabelInterpreter property on the ColorBar class.
How do I set the default then, I know that there is a ColorbarTickLabelInterpreter class.
You saved us. Good answer
thanks for this code

Accedi per commentare.

To update Patrick Kalita's answer
h = colorbar;
title(h, 'foo')

Categorie

Prodotti

Richiesto:

il 8 Lug 2011

Community Treasure Hunt

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

Start Hunting!

Translated by