how to add a label to a contourf plot next to colourbar?

59 views (last 30 days)
Hello mathcoders,
I want to add a label next to the colourbar for adding the variable's name, how can I do it?. The resulting plot and code is attached to these brief lines. Also I have noticed that when adding months labels it only present till June, but when remove the colourbar it prints till December, how can I solve this?.
Thanks in advance
figure(1)
irradiation_alongyear=[Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec];
contourf(irradiation_alongyear)
colorbar
ylabel('Hours of the day', 'Fontsize', 14)
xticklabels(LastName)
title('Irradiation distribution along the year','FontSize',14)
  2 Comments
Scott MacKenzie
Scott MacKenzie on 2 Jun 2021
It might help if you post the code that created the figure. Your code crashes with the following error:
Unrecognized function or variable 'Jan'.
Error in test3 (line 7)
irradiation_alongyear=[Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec];
Tony Castillo
Tony Castillo on 3 Jun 2021
I apologize for not sharing more data, I guess that it but be doable with the part of the code that I shared.

Sign in to comment.

Accepted Answer

Joseph Cheng
Joseph Cheng on 2 Jun 2021
Edited: Joseph Cheng on 2 Jun 2021
you can set a ylabel by passing the colorbar handles into ylabel
[X,Y] = meshgrid(1:12,1:24);
Z = sin(X) + cos(Y);
figure(1),contourf(Z)
lastname = {'jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec'};
ylabel('hours of the day')
xticks([1:12]);xlim([1 12]);
xticklabels(lastname)
hbar = colorbar;
ylabel(hbar,'Varname');
here essentially i generated a dummy set of data to contourf() then force the x limits to 1 to 12 for the month then set hbar as the colorbar handles such that ylabel() knows what to label
  2 Comments
Joseph Cheng
Joseph Cheng on 2 Jun 2021
actually figured out why it was set to only half the months or so. as you set the ticklabels because of say the scaling for display changes the ticks it'll take the first X. so to remedy this i edited my initial response to also force the number of ticks to be 12 such that matlab doesn't auto populate what they should be

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!