2012-03-02 10 views
16

Birden rakamlar açık var ve çalışma zamanı sırasında bağımsız bunları güncellemek istiyorum. Aşağıdaki oyuncak örneği niyetimi açıklamak gerekir:Bir çizimin nereye gitmesi gerektiğini nasıl belirleyebilirim?

clf; 

figure('name', 'a and b'); % a and b should be plotted to this window 
hold on; 
ylim([-100, 100]); 

figure('name', 'c'); % only c should be plotted to this window 

a = 0; 
b = []; 
for i = 1:100 
    a = a + 1; 
    b = [b, -i]; 
    c = b; 
    xlim([0, i]); 
    plot(i, a, 'o'); 
    plot(i, b(i), '.r'); 
    drawnow; 
end 

Buradaki sorun ben ikinci figure açtığınızda, bunun yerine ikinci (ve sadece c olmalıdır ilkine çizmek için plot işlevlerini söyleyemem ki ikinciye çizilmiştir).

cevap

17

komut da görünür ve her şeyin üstünde bir rakam ayarlayacaktır

figure(1) 
plot(x,y) % this will go on figure 1 

figure(2) 
plot(z,w) % this will go on another figure 

gibi bir şey kullanabilirsiniz.

ileri geri aynı figure komutu vererek gerekli rakamlar arasında geçiş yapabilirsiniz.

h=figure(...) 

ve sonra yerine sayısal indeksleri kullanmanın figure(h) sorunu: Alternatif olarak, hem de şekle tutamağı kullanabilirsiniz. Bu sözdizimi ile, aynı zamanda Sen arsa-komuta eksenleri-nesneyi belirtebilirsiniz

set(0,'CurrentFigure',h) 
13

kullanarak üstündeki kadar haşhaş figürü önleyebilir. , Eksenleri insert, bir rakam açın Yani

http://www.mathworks.de/help/techdoc/ref/plot.html

nesne eksenlerinin id kaydedin ve sonra içine çizmek: Buraya bakın

figure 
hAx1 = axes; 
plot(hAx1, 1, 1, '*r') 
hold on 

figure 
hAx2 = axes; 
plot(hAx2, 2, 1, '*r') 
hold on 


plot(hAx2, 3, 4, '*b') 
plot(hAx1, 3, 3, '*b') 

Alternatif seni nesneyi kendi başınıza yerine eksenleri yaratma gca kullanabilirsiniz (otomatik fiili şekil içinde oluşturulan çünkü, ne zaman yok!)

figure 
plot(1,1) 
hAx1 = gca; 
hold on 

figure 
plot(2,2) 

plot(hAx1, 3, 3) 

rakamları arasındaki ilişkiyi temsil eden aşağıdaki hiyerarşiyi bakın ve http://www.mathworks.de/help/techdoc/learn_matlab/f3-15974.html itibaren

enter image description here

eksenleri.

+1

Ama neden eksenini manipüle? Ya hiç eksen istemiyorsam? Bu benim için biraz sarsılmış görünüyor (Matlab'a yeni). Lütfen açıklar mısın? Eğer HER ZAMAN çizmek şey (eğer eksenleri olmadan çizemem) bir eksenler-nesnesine gider Çünkü –

+3

;) Eğer 'axes'-komutunu kullanmayın zaman rakam bunları içermiyorsa' plot' bunları otomatik olarak oluşturur. Yani gitmek için doğru yol. benim düzenlenmiş mesajımı gör! 'Plot' komutu yerine figür sapın ekseni kolu kullanır neden – tim

+1

Teşekkürler, ama ben hala merak - daha sezgisel olacak gibi görünüyor. –

İlgili konular