How to move the colorbar label to top position of the bar?

95 vues (au cours des 30 derniers jours)
Kalasagarreddi Kottakota
Kalasagarreddi Kottakota le 7 Août 2023
Réponse apportée : AB le 14 Juil 2025
I need to change the colorbar label to the position showed in the attached image.
C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
clims = [4 18];
imagesc(C,clims)
e=colorbar;
e.Label.String = 'amp';

Réponse acceptée

Dyuman Joshi
Dyuman Joshi le 7 Août 2023
Modifié(e) : Dyuman Joshi le 7 Août 2023
C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
clims = [4 18];
imagesc(C,clims)
e=colorbar;
e.Label.String = 'amp';
%Adjust the position of the label
e.Label.VerticalAlignment = 'middle';
%The positioning, in the default unit, of the text label
%is corresponding to the values of colorbar
%x value is Middle of the colorbar i.e. 0.5
%y value is slightly above the top limit of colorbar
e.Label.Position = [0.5 clims(2)+0.75];
Edit - If you want to make the text horizontally aligned, change the rotation to 0 by using the command below
e.Label.Rotation = 0;

Plus de réponses (1)

AB
AB le 14 Juil 2025
There seems to be a hidden Title property on the ColorBar object that might be a better way to accomplish this. Just do
h = colorbar;
h.Title.String = 'amp';
Note that h.Title will not appear until set.

Catégories

En savoir plus sur Color and Styling dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by