2012-01-19 19 views
65

Voglio cambiare la dimensione del carattere per xlabel, ylabel, la dimensione dell'asse, la dimensione del carattere della legenda a.k.un tutto in una volta, è possibile? Per impostazione predefinita, il font è Helvetica 10.Cambiare la dimensione dei caratteri nei grafici Matlab

C'è un modo per cambiare questo?

voglio usare 'FontSize', 14, per x o y etichette.

risposta

55

risposta di Jonas è buono, ma ho dovuto modificarlo leggermente per ottenere ogni pezzo di testo sullo schermo per cambiare: risposta

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

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

Come si modifica questo per includere il tipo di carattere per i numeri sugli assi? – sodiumnitrate

5

Per modificare la dimensione del carattere del titolo, utilizzare il seguente esempio

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

alla modifica la dimensione del carattere assi del grafico dell'etichetta, effettuare le seguenti operazioni

axes('FontSize',24); 
48

Se si desidera modificare le dimensioni di carattere tutto il testo in una figura, è possibile utilizzare findall per trovare tutti gli handle di testo, dopo di che è facile:

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

Vedere [risposta di @sergeyf] (http://stackoverflow.com/a/11439487/674976) in basso per modificare anche il carattere dell'etichetta dell'asse. Il collegamento – texnic

4

Per modificare la proprietà predefinita per l'intera sessione MATLAB, consultare la documentazione su how default properties are handled.

Per fare un esempio:

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

non funziona --- –

44

E 'possibile modificare i font predefiniti, sia per gli assi e per altro testo, aggiungendo le seguenti righe al file 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) 

Se non si sa se si dispone di un file startup.m, eseguire

which startup 

per trovare la sua posizione. Se Matlab dice che non ce n'è uno, esegui

userpath 

per sapere dove dovrebbe essere posizionato.

5

di Jonas non cambia la dimensione del carattere degli assi. La risposta di Sergeyf non funziona quando ci sono più sottotrame.

Ecco una modifica del loro risposte che funziona per me quando ho più sottotrame:

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

Se qualcuno si stava chiedendo come modificare le dimensioni dei caratteri, senza fare in giro con le Matlab caratteri predefiniti, e cambiare ogni carattere in una figura, ho trovato this thread dove suggerisce questo:

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

findall è un comando piuttosto comodo e nel caso di cui sopra è in realtà trova tutti i bambini che hanno una proprietà 'FontSize': assi etichette, assi titoli, pulsanti, ecc

Speranza che aiuta.

Problemi correlati