kişisel internet günlüğü
İlk yazımız olan MATLAB Programlamaya Giriş yazısında kısaca da olsa grafik çizimlerine bakmıştık, şimdi konuyu biraz açalım. Ama önce ilk yazının ilgili bölümünü okumalısınız.
MATLAB dokümantasyonundan bakarsak bu iş için tonla çizim fonksiyonu var. Ben en çok kullandıklarımı yazayım. öncelikle
plot fonksiyonunun özelliklerine bakalım:
x = linspace(-pi,pi,20); y = sin(x); plot(x,y,'--ro','LineWidth',2,... 'MarkerEdgeColor','k',... 'MarkerFaceColor','b',... 'MarkerSize',8)
Üstte x ve y değerleri oluşturduk ve ayrıntılı bir çizim yaptık. Şimdi her bir parçasına bakalım.
Tüm parametreleri vermek gerekli değil, üstteki kodu canınız nasıl isterse değiştirip sonuçlarına bakabilirsiniz.
plot fonksiyonu iki nokta arasına doğru parçaları koyar, o yüzden sırası önemli. örneğin ilk elemanların sırası şöyle olsaydı:
k = [6 2 3 4 5 1 7:length(x)]; plot(x(k),y(k),'-.m^','LineWidth',2,... 'MarkerEdgeColor','r',... 'MarkerFaceColor','y',... 'MarkerSize',12)
Görüldüğü üzere çizim güzel olmayacaktı. Tabii çizimde çizgi kullanmayabilirdik ve sıralı olması farketmezdi:
plot(x(k),y(k),'gh','LineWidth',2,... 'MarkerEdgeColor','k',... 'MarkerFaceColor','b',... 'MarkerSize',12)
Çizim yapmak için sadece plot fonksiyonu yok elbette. Sıkça kullanılabilecek stem ve stairs‘de mevcut. Altta ne işe yaradıkları gözüküyor:
stem(x,y,':ro','LineWidth',3,... 'MarkerEdgeColor','m',... 'MarkerFaceColor','c',... 'MarkerSize',10)

stairs(x,y,'-rs','LineWidth',2,... 'MarkerEdgeColor','g',... 'MarkerFaceColor','b',... 'MarkerSize',5)
bar diye de güzel bir fonksiyon var (detaylarını pas geçiyorum):
bar(x,y,'r')
Bu çizimleri ilk yazıdaki gibi subplot ile aynı figür içine yerleştirebilir, değişik başlıklar, vb. ekleyebilirdik.
Sıra geldi grafiği dokümanlara eklemek için kaydetmeye. Bunu arayüzü kullanarak File -> Save seçeneği ile yapmak mümkün ama otomatik de yapılabilirken niye uğraşalım!
saveas(gcf,'ornek_resim.jpg')
Üstte görüldüğü üzere gcf ile yakalanan figürü, yani şu anki gözüken figürü (’get current figure’) bir jpg olarak kaydettik. Birçok format destekleniyor: bmp, eps, pdf, png, ppm, vb. Ayrıca fig de destekleniyor. O şekilde kaydederseniz daha sonra MATLAB’e geri yükleyip figürün üstünde elle değişiklikler yapıp tekrar
kaydedebilirsiniz.
Bitirmeden küçük ama önemli bir özelliği de ekleyelim. subplot fonksiyonunu öğrenmiştik. Fakat bir figür içinde birden çok grafiğiniz varsa bu grafikleri birbirine bağlamak isteyebilirsiniz. Bağlamaktan kastedilen birinde yaklaşma/uzaklaşma/kaydırma/vb. yapılınca diğerinin de görünümünün benzer şekilde güncellenmesi.
örneğin:
x = linspace(-pi,pi,20); s = sin(x); c = cos(x); ax(1) = subplot(2,1,1); stem(x,s) title('Sin grafiği') ax(2) = subplot(2,1,2); stem(x,c) title('Cos grafiği') linkaxes(ax,'xy');
Üstteki örnekte xy parametresi ile hem x hem de y eksenlerini bağladık. Bu dokümanda gözükmez ama oluşan grafikte bir pencereye yaklaşma uygularsanız, diğerinin de aynı şekilde
hareket edeceğini göreceksiniz. Parametre olarak yalnızca x veya y vererek sadece o eksenler de bağlanılabilirdi.
Kaynak olarak MATLAB dokümantasyonunu kullandık. Yazımızın da sonuna geldik.
Yorum Ekle