2013-09-23 18 views
5

Come si può impostare una ylabel "grande, singola" per più subplot in matlab?una ylabel per tutte le sottotrame. Matlab

Ho provato a cercare, ma ho trovato una domanda simile con 'matplotlib' non con matlab.

Grazie in anticipo.

+0

È possibile creare una sola 'ylabel' (ad esempio, per la prima sottotrama) e quindi usare [questa domanda correlata] (http://stackoverflow.com/questions/10634923/align-the-ylabel-in-subplots) per allinearlo. –

+0

@EitanT: ho provato ad usare la proprietà 'position' dell'etichetta per posizionarla nel mezzo dell'asse y di tutte le sottotrame ma sembra risolto. Potete suggerirmi le coordinate della proprietà 'position' per una sottotrama '2 row'. Grazie molto. – Mushi

+1

L'ho fatto per me con la stessa proprietà 'posizione'. Era solo questione di regolare la posizione in base alle tacche dell'etichetta. Grazie per l'aiuto. – Mushi

risposta

3

Ecco qualcosa che potrebbe aiutare:

MyBox = uicontrol('style','text'); 
set(MyBox,'String','Your YLabel') 
set(MyBox,'Position',[0,0,10,10]) 

è possibile aggiungere altri oggetti da ruotare e cambiare il colore di sfondo.

Edit:

Beh non ho trovato alcun modo di fare la rotazione con l'UIControl. L'altra opzione è quella di utilizzare il comando text:

%your subplot 
h = axes('Position',[0 0 1 1],'Visible','off'); %add an axes on the left side of your subplots 
set(gcf,'CurrentAxes',h) 
text(.1,.45,'Your YLABEL',... 
'VerticalAlignment','bottom',... 
'HorizontalAlignment','left', 'Rotation', 90, 'FontSize',18)