arkadaşlar matlabda grafik cizmek istiyorum.mesela iki noktası bilenen doğru denklemi.
y=((y2-y1)/(x2-x1))(x-x2)+y2
bunu cizdiren komutlarnedir.ben yazdım ama hiç bişey cizdi..
plot(y); ile çizdirebilirsin
şimdi formülü aynen yazıp plot(y) olurmu?
çizim yapabilmen için sayı dizisi olması lazım örnek rampa fonks şeklinde bi çizim için
for i=1:100;
y(i)=i;
end
plot(y)
şeklinde olur
plot komutuyla çizim yapabilmek için bir dizi ve bu diziye karşılık gelen elemanlardan oluşan ikinci bir dizi gerekir. En basitinden:
x=-10:1:10;
komutu -10 dan 10 a kadar 1 er 1 er artan bir dizi oluşturur.
y=x*5;
ile elemanları x tekinin 5 katı olan aynı boyutlu bir dizi oluşturursunuz ve
plot(x,y);
ile çizdirirsiniz.
y=x*5; yerine y=x^2 yi çizdirmek istersek bize x in eleman eleman çarpılmış hali gerekir. Matlab x*x i matrix çarpımı olarak düşünür, hayır ben eleman eleman çarpmak istiyorum derseniz .* kullanmalısınız:
y=x.*x;
Sizin verdiğiniz örnek de bunlar gibi ancak doğrunun geçtiği noktaları (x1,y1), (x2,y2) belirtmelisiniz. Örn:
x1=1;
y1=2;
x2=3;
y2=10;
x=-100:0.1:100;
y=((y2-y1)/(x2-x1))*(x-x2)+y2;
plot(x,y);
grid on
Tüm bunlar ve benzer örnekler help te bulunmaktadır. "Getting started" bölümün sadece kodlarına bakmak bile matlabe elinizi ısıtır. İyi çalışmalar.
çok teekkürler yardım için.peki ben her defasında komutları komutları yenidenmi yazıcağım.komutları silip.x1 değiştirmem için silip tekraedan yazıyorum.yada başka bir değişken için hep tekrardanmı yazmalıyım...
Fonksiyon yazabilirsiniz. File> New > M-File
function dciz(a1,b1,a2,b2)
x1=a1;
y1=b1;
x2=a2;
y2=b2;
x=-100:0.1:100;
y=((y2-y1)/(x2-x1))*(x-x2)+y2;
plot(x,y);
grid on
end
yazıp dciz.m olarak kaydedin.
Örn kullanımı:
Noktalar (2,3) (5,6) ise:
dciz(2,3,5,6);
İyi çalışmalar.