【问题标题】:Can't change xtick font size in Matlab subplot无法在 Matlab 子图中更改 xtick 字体大小
【发布时间】:2013-11-12 09:51:37
【问题描述】:

我想更改 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');

【问题讨论】:

    标签: matlab


    【解决方案1】:

    here所写:

    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
    

    【讨论】:

      猜你喜欢
      • 2012-02-14
      • 2015-02-13
      • 2018-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-27
      • 2013-11-11
      • 1970-01-01
      相关资源
      最近更新 更多