Problem setting axis label dimensions

1 view (last 30 days)
I would like to have a plot with two y-axes with their labels of the same dimension (24 points).
I am using this code:
figure1=figure('Color','White','Position',[1,41,1000,600],'Renderer', 'Painters')
%Label sizing
size_labels=24;
legend_label=13;
ticks_label_size=12;
%Primary axis plot
plot(age,t_set_avg,'LineWidth',1.2,'Color', [0.9290, 0.6940, 0.1250]);
hold on
ylabel('Air temperature [°C]','Fontsize',size_labels,'Fontweight','bold');
%Secondary axis plot
yyaxis right
plot(age,weight,'--','LineWidth',1.2,'Color',[0.4, 0.4, 0.4]);
a = get(gca,'XTickLabel');
set(gca,'XTickLabel',a,'fontsize',ticks_label_size,'YColor','k');
xlabel('Days of production cycle','Fontsize',size_labels,'Fontweight','bold');
ylabel('Broiler live weight [kg]','Fontsize',size_labels,'Fontweight','bold');
%Legend
legend('\theta_{set\_opt}','\theta_{set\_H}','Fontsize',legend_label);
When I check on the Property Inspector, the size of the label of secondary y-axis is 24 points (as I set) but the primary on is 13.2 points.
Where is my mistake?
Thank you for your help

Accepted Answer

ANKUR KUMAR
ANKUR KUMAR on 15 Mar 2021
figure1=figure('Color','White','Position',[1,41,1000,600],'Renderer', 'Painters')
size_labels=24;
legend_label=13;
ticks_label_size=12;
plot([1:25],randi(10,1,25),'LineWidth',1.2,'Color', [0.9290, 0.6940, 0.1250]);
hold on
ylabel('Air temperature [°C]','Fontsize',size_labels,'Fontweight','bold');
yyaxis right
plot([1:25],randi(10,1,25),'--','LineWidth',1.2,'Color',[0.4, 0.4, 0.4]);
xlabel('Days of production cycle','Fontsize',size_labels,'Fontweight','bold');
ylabel('Broiler live weight [kg]','Fontsize',size_labels,'Fontweight','bold');
legend({'\theta_{set\_opt}','\theta_{set\_H}'},'location','best','FontSize',legend_label);
Below code gives the fontsize of both ylable, and both having the same fontsize as 24.
yyaxis left
left_axis=get(gca,'ylabel');
left_axis.FontSize
yyaxis right
right_axis=get(gca,'ylabel');
right_axis.FontSize
  6 Comments
Adam Danz
Adam Danz on 17 Mar 2021
Edited: Adam Danz on 17 Mar 2021
Cleaner:
yyaxis left
plot(__)
yl(1) = ylabel('Air temperature [°C]','Fontweight','bold');
yyaxis right
plot(__)
a = __
set(__)
xlabel(__)
yl(2) = ylabel('Broiler live weight [kg]','Fontweight','bold');
legend(__)
set(yl,'FontSize',24)

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!