Ändern der Schriftgröße in Matlab-Plots

76

Ich möchte für die Schriftgröße ändern xlabel, ylabelAchse, Größe, Legende Schriftgröße aka alles auf einmal, ist das möglich? Standardmäßig lautet die Schriftart Helvetica 10.

Gibt es eine Möglichkeit, dies zu ändern?

Ich möchte 'FontSize', 14, für x- oder y- Beschriftungen verwenden.

Sosruko
quelle

Antworten:

59

Jonas 'Antwort ist gut, aber ich musste sie leicht ändern, damit sich jeder Text auf dem Bildschirm ändert:

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

set(findall(gcf,'type','text'),'FontSize',30,'fontWeight','bold')
sergeyf
quelle
1
Wie würde man dies ändern, um den Schrifttyp für die Zahlen auf den Achsen einzuschließen?
Natriumnitrat
50

Wenn Sie die Schriftgröße für den gesamten Text in einer Abbildung ändern möchten, können findallSie alle Textgriffe suchen. Danach ist es ganz einfach:

figureHandle = gcf;
%# make all text in the figure to size 14 and bold
set(findall(figureHandle,'type','text'),'fontSize',14,'fontWeight','bold')
Jonas
quelle
2
Siehe Antwort von @sergeyf unten zum Ändern der Schriftart der Achsenbeschriftung.
Texnic
45

Sie können Standardschriftarten sowohl für die Achsen als auch für anderen Text ändern, indem Sie der startup.mDatei die folgenden Zeilen hinzufügen .

% 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)

Wenn Sie nicht wissen, ob Sie eine startup.mDatei haben, führen Sie sie aus

which startup

um seinen Standort zu finden. Wenn Matlab sagt, dass es keinen gibt, renne

userpath

zu wissen, wo es platziert werden soll.

Alexandre Chabot
quelle
9

Wenn sich jemand gefragt hat, wie man die Schriftgrößen ändert, ohne mit den Matlab-Standardschriftarten herumzuspielen und jede Schriftart in einer Figur zu ändern , habe ich diesen Thread gefunden, in dem dies vorgeschlagen wird:

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

findallist ein ziemlich praktischer Befehl und findet im obigen Fall wirklich alle Kinder, die eine 'FontSize'Eigenschaft haben: Achsenbeschriftungen, Achsentitel, Drucktasten usw.

Ich hoffe es hilft.

pm89
quelle
5

Verwenden Sie das folgende Beispiel, um die Schriftgröße des Titels zu ändern

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

Gehen Sie wie folgt vor, um die Schriftgröße der Grafikachsenbeschriftung zu ändern

axes('FontSize',24);
suresh
quelle
5

Jonas 'Antwort ändert nichts an der Schriftgröße der Achsen. Die Antwort von Sergeyf funktioniert nicht, wenn mehrere Nebenhandlungen vorhanden sind.

Hier ist eine Modifikation ihrer Antworten, die für mich funktioniert, wenn ich mehrere Nebenhandlungen habe:

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

Informationen zum Ändern der Standardeigenschaft für Ihre gesamte MATLAB-Sitzung finden Sie in der Dokumentation zum Umgang mit Standardeigenschaften .

Als Beispiel:

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