Soru sorBir figüre birden fazla grafik çizdirmek istiyorum
yankee35 tarafından 3 yıl önce soruldu

Matlabda daha önce arc adlı bir fonksiyon oluşturdum. Bu fonksiyon girilen parametrelere göre bir grafik çizdiriyor. Başka bir fonksiyonda (baseStation) da arc fonksiyonunu kullanarak birden fazla grafik çizdiriyorum. Sorun şu ki arc fonksiyonunun içinde plot komutu olduğu için tüm grafikleri farklı figürlere çizdiriyor ama ben hepsini aynı yere çizdirmesini istiyorum. Ne yapabilirim? Yardımcı olursanız sevinirim.

3 Cevap
sayginer Yönetici tarafından 3 yıl önce cevaplandı

Bir çizimi yaptıktan sonra hold on fonksiyonunu kullanarak diğer çizimleri de üzerine çizdirmesini sağlayabilirsiniz. Aşağıdaki örneği inceleyebilirsiniz:

plot([1 2 3],[5 6 7]); hold on;
plot([2 3 4],[4 3 5]);

Ayrıca:

yankee35 tarafından 3 yıl önce cevaplandı

Bunu biliyorum sorun şu ki:
function arc(x0,y0,r,a1,a2)
Q = a1:0.01:a1+a2;
figure;
plot(r*cos(Q) + x0 , r*sin(Q) + y0)
end
function baseStation(x0,y0,a3)
arc(x0,y0,2,0,2*pi); hold on;
arc(x0,y0,5,a3,2*pi/3); hold on
arc(x0,y0,6,a3,2*pi/3); hold on
arc(x0,y0,7,a3,2*pi/3);
end
böyle yapsam veya arc fonksiyonun içine hold on koysam da farklı figürlere çiziyor.
İlginiz için teşekkür ederim

hakkans Yönetici tarafından 3 yıl önce cevaplandı

Merhaba,
arc fonksiyonunuzun içinde figure; komutu olduğu için ne zaman arc'yi çağırsanız yeni bir figür penceresi açılır. Kodunuzun geri kalan yapısını bilmesem de, buradaki figure; komutunu kaldırıp sadece bu fonksiyonu ard arda çağırdığınızı varsayarsak bütün grafikleriniz aynı pencereye çizilecektir.