2016-01-12 59 views
5

Sto cercando di combinare alcuni grafici di Matlab in una figura e quindi mi chiedo come creare piastrelle "normali" sopra i miei grafici invece dei titoli in grassetto forniti da Matlab. Sotto un esempio.Come 'un' grassetto titoli per figure MATLAB?

figure 
plot((1:10).^2) 
title({'First line';'Second line'}) 
+0

Immagino tu voglia rimuovere il carattere in grassetto? aggiungi \t ''\ bf il tuo titolo'' come descritto qui http://uk.mathworks.com/help/matlab/ref/title.html – GameOfThrows

+0

Oppure stai cercando di etichettare un titolo per ciascuno dei grafici che stai combinando? In tal caso dovresti usare 'subplot' ed emettere un titolo individuale per ciascuna delle tue sottotrame. – GameOfThrows

+0

@GameOfThrows non dovrebbe essere '\ sl'? – Dan

risposta

7

Fare uso dell'argomento 'FontWeight':

figure 
plot((1:10).^2) 
title({'First line';'Second line'},'FontWeight','Normal') 

Si noti inoltre che è possibile accedere l'argomento 'FontWeight' per tutti gli oggetti di testo nella tua figura in un colpo solo --- nel caso in cui si dispone, ad esempio, diverse sottotrame a tua figura --- utilizzando findall:

myFig = figure; 
subplot(2,1,1) 
plot((1:10).^2) 
title('First plot') 
subplot(2,1,2) 
plot((1:10).^2) 
title('Second plot') 

% Set 'Normal' font weight in both titles above 
set(findall(myFig, 'Type', 'Text'),'FontWeight', 'Normal') 

Come indicato nei commenti di cui sopra; per un titolo a cifra singola, è possibile fare uso di utilizzare \rm in alternativa. Si noti tuttavia che \rm dipende dalla scelta (predefinita) di 'Interpreter' come 'tex', mentre l'approccio sopra riportato è valido per tutte le scelte dell'interprete (tuttavia senza alcun effetto per gli oggetti di testo che utilizzano l'interprete 'latex').