“默认颜色栏字体大小”无效


1

我试图使这个选项在如下代码中工作:

AxLabMultip = 1.9;
AxFontSiz = 14;

set(groot, ...
   'DefaultColorbarFontSize', 10000, ...              % !?!?!?!?!?!?!?!?!?!?!?!?
   'DefaultAxesFontsize', AxFontSiz, ...              % Affects numbers and labels of axes and colorbar.
   'DefaultAxesLabelFontSizeMultiplier', AxLabMultip) % Affects labels of axes (not colorbar).

xyz=ones(10);
imagesc(xyz)
    xlabel('x')
    ylabel('y')
    trash = colorbar;
        xlabel(trash,'z')

但是 'DefaultColorbarFontSize' 价值没有区别。然后我猜 为什么 ,如果有的话 任何其他解决方案 比添加一个可怕的 'fontsize', AxFontSiz*AxLabMultip 选项到最后 xlabel,每次我都有 imagesc...而且, colorbar 刻度标签似乎仍然存在 有点小 比轴的,所以我必须补充 set(trash,'Fontsize', AxFontSiz) 每个情节......

我正在使用Matlab R2015a。


1
的默认行为 FontSize colorbar的颜色是它来自轴' FontSize。如果您没有设置任何字体大小,例如 set(gca, 'FontSize',18),你会看到这会改变colorbar的字体大小。也许这种行为超过了 DefaultColorBarFontSize 设置。从Mathworks网站:“如果更改轴的字体大小,则MATLAB会自动将颜色条字体大小设置为轴字体大小的90%。如果手动设置颜色条字体大小,则更改轴字体大小不会影响彩条“。
BramMooij

1
我玩了一下,注意到与字体相关的其他颜色栏属性也不起作用。我认为它们被轴属性所推翻,因为它们可以工作并且还可以更改与字体相关的颜色条属性。我不认为你能以一种非常好的方式做到这一点。如果您打开所有数字并且不想每次都添加一行,您可以这样做: h = findobj('type','figure'); %find all figures 然后 trash = findobj(get(h(i),'Children'),'Tag','Colorbar'); trash.FontSize=20; 并将整个事物嵌入到for循环中以迭代所有数字。
BramMooij
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.