web-dev-qa-db-ja.com

Matlabプロットでのフォントサイズの変更

xlabelylabel、軸サイズ、凡例フォントサイズのフォントサイズを一度にすべて変更したいのですが、これは可能ですか?デフォルトでは、フォントはHelvetica 10です。

これを変更する方法はありますか?

xまたはyラベルに 'FontSize'、14を使用したい。

73
sosruko

Jonasの答えは良いのですが、画面上のeveryのテキストを変更するには変更する必要がありました。

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

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

Figure内のすべてのテキストのフォントサイズを変更する場合は、findallを使用してすべてのテキストハンドルを検索できます。その後は簡単です。

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

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

それがどこに置かれるべきかを知るために。

45

Matlabのデフォルトフォントをいじらずにフォントサイズを変更し、every図中のフォント、私は見つけました このスレッド どこがこれを示唆しています:

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

findall は非常に便利なコマンドであり、上記の場合、'FontSize'プロパティを持つすべての子を実際に検索します:axes lables、axes titles、pushbuttonsなど.

それが役に立てば幸い。

8
pm89

Jonasの答えは、Axesのフォントサイズを変更しません。複数のサブプロットがある場合、Sergeyfの答えは機能しません。

以下に、複数のサブプロットがある場合に役立つ回答の修正を示します。

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

タイトルのフォントサイズを変更するには、次の例を使用します

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

グラフの軸ラベルのフォントサイズを変更するには、次の操作を行います

axes('FontSize',24);
5
suresh

MATLABセッション全体のデフォルトプロパティを変更するには、 デフォルトプロパティの処理方法 のドキュメントを参照してください。

例として:

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