2012-05-27 4 views
6

Sto implementando un algoritmo di clustering per i punti di dati n e voglio tracciare i punti di dati n in una figura prima del clustering e in un'altra figura dopo il clustering significa che ci dovrebbero essere due figure nello stesso file con stessi punti di dati.Come stampare due figure in MATLAB

Il mio codice è simile:

X = 500*rand([n,2]); 
plot(X(:,1), X(:,2), 'r.')     1 

%Some coding section here 

Dopo:

symbs = {'r+','g.','bv','m*','ko'}; 
hold on 
for i = 1: length(I) 
    plot(X(C==i,1), X(C==i,2), symbs{i})  2 
end 

voglio solo tracciare (1) in una figura e (2) in un altro.

+0

questo post può essere utile per voi: [Tracciare tre grafici in una figura] (http://stackoverflow.com/q/10642628/976870) – peaceman

risposta

17

Prova subplot:

figure; 
subplot(1,2,1) 
plot(firstdata) 
subplot(1,2,2) 
plot(seconddata) 

Questo creerà due aree assi all'interno della stessa finestra figura ... dalla tua descrizione, questo è il mio migliore ipotesi su ciò che si desidera.

Edit: Dai commenti qui sotto, qui è quello che state facendo

n=50; 
X = 500*rand([n,2]); 
subplot(1,2,1); #% <---- add 'subplot' here 
plot(X(:,1),X(:,2),'r.') 
symbs= {'r+','g.','bv','m*','ko'}; 
subplot(1,2,2); #% <---- add 'subplot' here (with different arguments) 
hold on 
for i = 1: length(I) 
plot(X(C==i,1),X(C==i,2),symbs{i}) 
end 

Se quello che cercate è una seconda figura finestra, invece di fare subplot si può semplicemente dire figure nel luogo in cui mi mettere la seconda chiamata a subplot e verrà creata una nuova finestra di figura.

figure; #% <--- creates a figure window 
n=50; 
X = 500*rand([n,2]); 
plot(X(:,1),X(:,2),'r.') #% <--- goes in first window 


symbs= {'r+','g.','bv','m*','ko'}; 
figure; #% <---- creates another figure window 
hold on 
for i = 1: length(I) 
plot(X(C==i,1),X(C==i,2),symbs{i}) #% <--- goes in second window 
end 
+0

non il suo lavoro – user1416605

+0

Può darci qualche informazione in più * cosa * non funziona - modifica la tua domanda con il codice che non funziona, per esempio? – tmpearce

+0

ciao ho fatto gli aggiornamenti nella mia domanda .Plz controlla questo uno – user1416605