在Matlab图中更改字体大小

时间:2012-01-19 22:43:20

标签: matlab matlab-figure

我想一次更改xlabelylabel,轴大小,图例字体大小a.k.a的字体大小,这可能吗?默认情况下,字体是Helvetica 10.

有没有办法改变这个?

我想使用' FontSize',14用于 x y 标签。

7 个答案:

答案 0 :(得分:59)

Jonas的答案很好,但我必须稍微修改它才能让屏幕上的每个文字都改变:

set(gca,'FontSize',30,'fontWeight','bold')

set(findall(gcf,'type','text'),'FontSize',30,'fontWeight','bold')

答案 1 :(得分:50)

如果要更改图中所有文本的字体大小,可以使用findall查找所有文本句柄,之后很容易:

figureHandle = gcf;
%# make all text in the figure to size 14 and bold
set(findall(figureHandle,'type','text'),'fontSize',14,'fontWeight','bold')

答案 2 :(得分:45)

通过在startup.m文件中添加以下行,可以更改轴和其他文本的默认字体。

% Change default axes fonts.
set(0,'DefaultAxesFontName', 'Times New Roman')
set(0,'DefaultAxesFontSize', 14)

% Change default text fonts.
set(0,'DefaultTextFontname', 'Times New Roman')
set(0,'DefaultTextFontSize', 14)

如果您不知道自己是否有startup.m个文件,请运行

which startup

找到它的位置。如果Matlab说没有,请运行

userpath

知道应该放在哪里。

答案 3 :(得分:8)

如果有人想知道如何更改字体大小而不弄乱 Matlab默认字体,并更改图中的每个字体,我发现{{3}在哪里暗示:

set(findall(fig, '-property', 'FontSize'), 'FontSize', 10, 'fontWeight', 'bold')

this thread是一个非常方便的命令,在上面的例子中,它确实找到了所有拥有'FontSize'属性的孩子:轴标签,轴标题,按钮

希望它有所帮助。

答案 4 :(得分:5)

要更改标题字体大小,请使用以下示例

title('mytitle','FontSize',12);

更改图形轴标签字体大小,执行以下操作

axes('FontSize',24);

答案 5 :(得分:5)

Jonas的回答并没有改变轴的字体大小。 当有多个子图时,Sergeyf的答案不起作用。

当我有多个子图时,这是对他们的答案的修改:

set(findall(gcf,'type','axes'),'fontsize',30)
set(findall(gcf,'type','text'),'fontSize',30) 

答案 6 :(得分:4)

要更改整个MATLAB会话的默认属性,请参阅how default properties are handled上的文档。

举个例子:

set(0,'DefaultAxesFontSize',22)
x=1:200; y=sin(x);
plot(x,y)
title('hello'); xlabel('x'); ylabel('sin(x)')