2

我想更改 x & y 刻度标签的字体大小,但只能更改 y 刻度标签的大小。

以下是仅更改 y 刻度标签字体大小的代码:

figure(1);
for z=1:length(percentsolar)
    for i=1:h
        percentimprovement4(:,i) = percentimprovement2(1,:,i,z,1);
    end
    ax(z) = subplot(3,2,z);
    boxplot(percentimprovement4);
    set(ax(z), 'fontsize', 6);
    ylabel('% improvement', 'fontsize',8,'fontweight', 'bold');
    xlabel('Hour of the day', 'fontsize', 8,'fontweight', 'bold');
    title(['PF improvement for ', num2str(percentsolar(z)),'% solar penetration'], 'fontsize', 10 ,'fontweight', 'bold');
    clear percentimprovement4
end
linkaxes(ax);
saveas(gcf,'Boxplotshourly.jpg');
4

1 回答 1

2

如此处所写:

boxplot() 对 Y 轴使用默认轴标签,但对于 X 轴,它使用 text() 将标签放置在适当的位置,并且在这样做时不会抓取轴 FontSize。

因此,除了set(ax(z), 'fontsize', 6);你还应该使用set(findobj(ax(z),'Type','text'),'FontSize', 6);. 例如,

figure(1);


percentsolar = zeros(1,6);

 z = 6;
 ax = zeros(0, length(percentsolar));

 for z = 1:length(percentsolar)
    ax(z) = subplot(3,2, z);

    x1 = normrnd(5,1,100,1);
    x2 = normrnd(6,1,100,1);


    boxplot([x1, x2]); 
    set(ax(z), 'fontsize', 6);
    set(findobj(ax(z),'Type','text'),'FontSize',  6);

    ylabel('% improvement', 'fontsize',8,'fontweight', 'bold');
    xlabel('Hour of the day', 'fontsize', 8,'fontweight', 'bold');
 end

在此处输入图像描述

于 2013-11-12T01:51:37.617 回答