You are on page 1of 18

MATLAB NOTLARI

MATLAB'e Giriş
"Demo" ları çalıştırma
Yardım Alma
Değişken oluşturma
Hesaplama Yapmak
Verileri Görülebilir Hale Getirmek

MATLAB'e Giriş

MATLAB'i MATLAB ikonuna çift tıklayarak yada Windows'un başlat menüsünden çağırarak başlatabilirsiniz.
Ana MATLAB penceresi açılacaktır; aşağıdaki gibi görünür

MATLAB komut penceresinde şu yazıları göreceksiniz.

To get started, select "MATLAB Help" from the Help menu.

" " işareti "command prompt"olarak adlandırılır, bu kısma çalıştıracağınız komutları yazarsınız; MATLAB
yazdığınız bu komutu işletip sonucu verecektir. Ve yine sizin komut yazmanızı bekleyecektir, böylelikle siz
MATLAB'a isteiğiniz kadar komutu interaktif olarak girip çalıştırabilirsiniz.

"Demo" ları çalıştırma

Komut penceresinde demo yazdığınızda açılan pencerede çok değişik demolar bulunmaktadır. İstenilen
demo buradan çalıştırılabilir.

1
Yardım Alma

Giriş
MATLAB kendisine ait komut ve fonksiyonlar hakkında detaylı dökümantasyon ve yardım bilgisini içeren
kapsamlı bir yardım sistemine sahiptir. Bu yardım sistemi MATLAB'e yeni başlayanlar için çok kullanışlı
olduğu gibi, MATLAB'de uzman olduktan sonra bile hala kullanışlıdır çünkü daha önce kullanılmayan
fonksiyonlar bulunabilmektedir. Burada yardım sisteminden nasıl faydalanacağımızı öğreneceğiz.

Komut çizgisinde Yardım Alma


Belirli bir fonksiyon hakkında yardım almak için üç temel fonksiyon bulunmaktadır: help,
helpwin(yardım penceresi için kısayol) and doc (dökümantasyon için kısayol). help ve helpwin
fonksiyonları aynı bilgiyi farklı pencerede vermektedir, doc komutu ise HTML sayfası üzerinde daha
geniş bilgi sunar.

Aşağıda değişik fonksiyonlar kullanarak date fonksiyonu hakkında yardım alma gösterilmektedir.

help date

DATE Current date as date string. S = DATE returns a string containing the date in
dd-mmm-yyyy format.

See also NOW, CLOCK, DATENUM.

Not: Yardım çıktısı aynı zaman ilişkili diğer fonksiyonlara referans vermektedir. Bu örnekte: See also
NOW, CLOCK, DATENUM.

helpwin date

2
Not: helpwin ve help den elde edilen bilgi aynı olmasına rağmen helpwin komutunu kullanmak
help den daha avantajlıdır:
- Yazı ayrı bir pencerede görüntülenir.
- "See also" kısmında gösterilen komutlara tekrar help yazarak bakmaktansa direk üzerine tıklanarak o
komut hakkında yardım alınabilir.
- Default Topics kısayolu size tüm MATLAB fonksiyon katagorilerini listeleyecektir böylece siz belirli
katagori ile alakalı fonksiyonları görebilirsiniz. Örneğin, X ve Y ye bağlı iki boyutlu grafik çizdirmekle
alakalı hangi fonksiyonlar olduğunu öğrenmek için matlab\graph2d konu kısayolunu tıklayabilirsiniz.

doc date

Not: doc komutunun çıktısı en eksizidir. Bilgiyi sadece bölümlere ayırmakla kalmaz, aynı zamanda size
çalıştırılabilecek ve uygulanabilecek tamamlanmış örnekler sunar.

Farklı yardım komutlarını şu fonksiyonlar üzerinde deneyin: magic, fft, and surf.

'MATLAB Help Browser'ın Kullanımı


Yardım için başka bir kaynakta 'MATLAB help browser'dır. 'MATLAB help browser' ı MATLAB komut
penceresinde helpbrowser yazarak, yardım butonuna tıklayarak , veya MATLAB masaüstünden
Start->MATLAB->Help 'i seçerek açabilirsiniz.

3
'Help browser'ın iki temel kısmı var bunlar Help Navigator, ve görüntüleme panosu. Görüntüleme
panosu, adından da anlaşıldığı gibi seçilen bilgiyi görüntüler. 'Help Navigator' ise 'help browser'ın sol
kısmındadır ve çevrimiçi yardım bilgilerinde gezinmek için kullanılır.

Search sekmesi sayesinde dökümantasyonda çok verimli bir arama yapabilirsiniz, ve ayrıca aradığınız
anahtar kelimeleri seçilmiş olarak göstermesi sayesinde dökümanı daha rahat okursunuz.

Değişken Oluşturma

Giriş

Değişkenler MATLAB'in temel kavramlarındandır, ve siz onları herzaman kullanacaksınız. Temel olarak,
bir değişken bir değer için sizin isim verebildiğiniz değerin yerini tutan şeydir. Bundan anlatılmak istenen
şey şudur, daha sonra yeni birşeyler hesaplamanız gerektiğinde, yeni hesabın bir parçası olan değerin
yerine onu refere eden değişkeni kullanabilirsiniz. Bu söylediklerimiz örneklerle daha iyi anlaşılacaktır.

En basit kullanım tarzıyla, MATLAB cep hesap makinası gibi kullanılabilir. Örneğin, MATLAB'le hesap
makinasında yaptığımıza benzer hesaplar yapalım.:

4 + 10
ans = 14
5 *10 + 6

4
ans = 56
(6 + 6) / 3
ans = 4
9^2
ans = 81

ans Değişkeni

Gördüğünüz gibi, MATLAB bütün temel aritmetik işlemleri desteklemektedir: +, -, *, /, ^, v.b.; ve


parantez yardımıyla işlemleri gruplayabilir ve sıralayabilirsiniz. Yukarıdaki ans diye bahsedilen şey nedir?
Kısaca ans "answer" 'in kısaca yazılışıdır, ve MATLAB'de herhangi bir değişken belirtilmediği durumlarda
kullanılan değişkendir. O değeri ans yazarak refere edebiliriz:

4 + 5
ans = 9
ans
ans = 9

Ancak, yeni bir eşitlik yazıldığında ans değişkeninin değeri değişecektir.

ans + 10
ans = 19

Kendi Değişkenlerinizi Tanımlama

ans değişkeninin kendisi kullanışlı değildir, Kendi değişkenlerinizi tanımlayabilmeniz ve kullanabilmeniz


çok kullanışlıdır. Örneğin:
a = 10
a = 10
b = 20
b = 20
c = 30
c = 30
a
a = 10
the_average = (a + b + c) / 3
the_average = 20

Şu Anda Tanımlı Değişkenleri Listeleme ve Değişkenleri Silme

Diyelim ki birçok değişken tanımladınız. Muhtemelen tanımladığınız bütün değişkenleri hatırlayamazsınız


and dolayısıyla tanımlanmış bütün değişkenlerin listesini görmek hoş olacaktır. whos komutu tam olarak
bu işe yaramaktadır. Basitçe komut çizgisinde whos yazmanız tanımlanmış bütün değişkenleri görmenizi
sağlar. Örneğin:

clear % clear variables from memory - see notes below


a = 5
a =5
b = 6
b =6
whos

5
Name Size Bytes Class
a 1x1 8 double array
b 1x1 8 double array

Grand total is 2 elements using 16 bytes


Değişken tanımlamayı öğrendiniz peki değişkenleri hafızadan nasıl sileceksiniz? Yani değişkenleri
temizleme komutu nedir? Komut penceresinde clear yazarsanız o zamana kadar depolanmış tüm
değişkenleri ve değerleri temizler. Örneğin, yukarıdaki örneğin devamı olarak:

whos

Name Size Bytes Class


a 1x1 8 double array
b 1x1 8 double array

Grand total is 2 elements using 16 bytes


clear
whos

Noktalı Virgül Kullanarak Sonuçları Gizlemek

Komuttan sonra noktalı virgül yazarsanız sonucun yazdırılmasını engellemiş olursunuz. Örneğin:

a = 10;
b = 20;
c = 30;
d = 40;
the_average = (a + b + c + d) / 4
the_average =
25
the_average;
b
b =
20
e = 50
e =
50

the_blank_average = (a + b + c + d + e) / 5;
the_blank_average

the_blank_average =
30

Değişken İsimleri ve Stringleri Değişken Atama

Değişkenleri isimlendirmenin bazı özel kuralları vardır, dolayısiyle dikkatli olmanız gerekir.

- Sadece birincil alfabetik karakterleri(A-Z), sayıları, ve alt çizgi karakterini("_") değişken isimlerinde
kullanınız.
- Değişken isimlerinde boşluk kallanılamaz, dolayısiyle, mesela, "this is a variable" şeklinde bir değişken
ismi kullanılamaz, fakat "this_is_a_variable" şeklinde olabilir (genelde, "_" karakterini değişken
isimlerinde kelimeleri birlikte kullanmak için ayıraç olarak kullanabilirsiniz).
- MATLAB harf karakterlerinin durumuna duyarlıdır. Örneğin, "A_VaRIAbLe", "a_variable", "A_VARIABLE",
ve "A_variablE" değişkenleri MATLAB'de aynı değişkenler değildir.

6
Siz aynı zamanda bir parça metinide değişkene atayabilirsiniz. Tek tırnak işaretini (çift tırnak değil --- tek
tırnak ve çift tırnak işaretlerinin MATLAB'de farklı kullanımları vardır.) metinin baş ve sonuna ekleyerek
değişkene atayabilirsiniz. Örneğin:

some_text = 'This is some text assigned to a variable!';


some_text

some_text =
This is some text assigned to a variable!

Metinlerin bu şekilde kullanımlarını çoğunlukla çizimlere etiket koyarken kullanacaksınız(Daha fazla bilgi
için çizimle ilgili derse bakın), fakat eşitlikler içinde metin içerikli değişkenlerle sayı içerikli değişkenleri
karıştırmamalısınız. Eğer bunu yaparsanız, çok ilginç sonuçlar alırsınız. Örneğin, aşağıdaki MATLAB
oturumunda "b" değişkeni bir metin dizgisidir, ve sayı gibi kullanmaya çalıştığınızda ilginç sonuçlar
alırsınız:

a = 5;
b = '5';
a/b
ans =
0.0943
a*b
ans = 265

Hesaplama Yapmak

Giriş
Bu derste, bazı temel matematik kavramlarını tanıyacaksınız, ve onların MATLAB'deki karşılığı olan veri
yapılarını öğreneceksiniz. Bu veri yapıları MATLAB'de nasıl 1) oluşturulur ve olar nasıl 2) indis edilir ve 3)
kullanılır.

MATLAB, MATrix LABoratory


MATLAB'de, ve Lineer Cebir'de, üç temel kavram skalarlar(scalar), vektörler ve matrisler.

Skalar bir sayıya verilen süslü bir isimdir (bir tek değer ).

Vektör dizilmiş skalarar listesidir (bir-boyutlu). MATLAB de bunlar satır-vektörü veya sütun-vektörü
şeklinde gösterilir.

Matris dikdörtgen şeklinde skalarar dizisidir (çok-boyutlu). MATLAB'de, iki boyutlu bir matris satırlarının
ve sütunlarının sayısı ile tanımlanır.

Not: Matrisler ikiden daha fazla boyuta sahip olabilmesine rağmen, biz bu derste sadece iki boyutlu
matrislerle çalışacağız. Daha fazla boyutlu matrislerle çalışmayla ilgili, MATLAB'in yardımını kullabilirsiniz.

MATLAB'de, ve Lineer Cebide, sayısal nesnelerbasitçe matris olarak sınıflandırılabilir: Skalarlar ve


vektörler ikiside matrisin özel bir tipi olarak varskalarabilir. Örneğin bir skalar satır bve sütun sayısı bir
olan bir matristir. (1 x 1 matris). Ve bir vektör tek boyutlu bir matristir: bir satır ve n-tane sütunu olan,
yada n-tane satırı ve bir sütunu olan.

MATLAB'de bütün hesaplamalar matrislerle yapılır. Bu yüzden adı "MATrix LABoratory"dir.

MATLAB'de Matris oluşturma


MATLAB'de matrisler köşeli parantezler içinde tanımlanır ([]). Virgül (,), ve noktalı virgül (;) noktalama
işaretleri sırasıyla satır ve sütun ayıracı olarak kullanılır.
Not: Satır ayıracı olarak virgül yerine boşluk, sütun ayıracı olarakta alt satıra geçmeyi (enter düğmesi)
kullanabilirsiniz.

7
Aşağıda MATLAB'de skalar ve vektör tanımlama ile ilgili örnekler bulunmaktadır.

my_scalar = 3.1415

my_scalar = 3.1415
my_vector1 = [1, 5, 7]

my_vector1 =
1 5 7

my_vector2 = [1; 5; 7]

my_vector2 = 1
5
7
Dikkat edilirse vektörlerden bir tanesi (my_vector1) satır vektörü, ve diğeri ise satır vektörü olarak
gösterilmiştir (my_vector2).Şimdi siz skalarlar ve vektörler nasıl üretilir biliyorsunuz peki ya iki boyutlu
matrisler? Örneğin, Biz my_matrix isimli ilk satırı 8, 12, ve 19 ,ikinci satırı 7, 3, 2, üçüncü satırı 12, 4,
23, ve dördüncü satırı 8, 1, 1, olan bir matrisi nasıl üretiriz?

my_matrix = [8, 12, 19; 7, 3, 2; 12, 4, 23; 8, 1, 1]

my_matrix =
8 12 19
7 3 2
12 4 23
8 1 1
Yukarıdaki kodla birlikte, my_matrix 4 x 3 matris şeklinde tanımlandı (4 satır ve 3 sütun).

Siz ayrıca farklı vektör ve matrisleri birleştirerek farklı matrisler tanımlayabilirsiniz. Fakat unutmayınız ki
dikdörtgen şeklinde tanımlanmalıdır.

row_vector1 = [1 2 3]

row_vector1 =
123

row_vector2 = [3 2 1]

row_vector2 =
321

matrix_from_row_vec = [row_vector1 ; row_vector2]

matrix_from_row_vec =
123
321

column_vector1 = [1;3]

column_vector1 =
1
3
column_vector2 = [2;8]

column_vector1 =
2
8

8
matrix_from_col_vec = [column_vector1 column_vector2]

matrix_from_col_vec =
12
38
my_matrix = [8, 12, 19; 7, 3, 2; 12, 4, 23; 8, 1, 1]

my_matrix =
8 12 19
7 3 2
12 4 23
8 1 1

combined_matrix = [my_matrix, my_matrix]

combined_matrix =
8 12 19 8 12 19
7 3 2 7 3 2
12 4 23 12 4 23
8 1 1 8 1 1
Örneklerden köşeli parantez, satır ayıracı ve sütun ayıracı ile herhangi bir tipte matrisi nasıl
oluşturulduğunu gördünüz.

Çalışacağınız verilerde vektörler olabilir. Örneğin günün her saati için sıcaklık değerleri verilebilir (24
elemanlı bir vektör), be bu veriyi zamana karşı çizdirmeniz gerekiyor. Fakat zaman verisini nasıl
üreteceksiniz? Elle üretebilirsiniz,

time = [0, 100, 200, 300, 400, ..., 1900, 2000, 2100, 2200, 2300];
veya sütun operatörü kullanabilirsiniz. Sütun operatörüyle düzenli artış oranına sahip bir vektör
üretebilirsiniz:

baslangıc_degeri:artıs_miktari:son_deger

Bu durumda,

time = 0:100:2300
Artış değeri yerine azalmada tanımlayabilirsiniz. Aşağıdaki kod 2300 ten başlayıp sıfıra kadar 100'er
azalan bir vektör üretir

time_dec = 2300:-100:0

Not: Dış kaynaktan veri almak istiyorsanız MATLAB Help Browser da "import data" diye aratıp bilgi
alabilirsiniz.

Matriste İndisleme
Diyelim ki bir vektör veya matris ürettiniz, ürettiğiniz verilerin bir alt kümesi olacak verileri bunlardan
elde etmek istiyorsunuz işte bu işlemi indisleme ile yapabilirsiniz.

my_vector1 ve my_vector2 örneklerine bakalım ve vektörün değerlerini nasıl indisleriz ona bakalım.

my_vector1 = [1 5 7]
my_vector1 =
157

my_vector2 = [1; 5; 7]
my_vector2 =
1

9
5
7

my_vector1(1)
ans = 1
my_vector2(2)
ans = 5
my_vector1(3)
ans = 7
my_vector2(1)
ans = 1
my_vector2(2)
ans = 5
my_vector2(3)
ans = 7
Tİşlem iki boyutlu matrisler içinde çok benzerdir. Tek fark tek indis kullanmak yerine satır ve sütun için
indisler kullanmak.

my_matrix = [8, 12, 19; 7, 3, 2; 12, 4, 23; 8, 1, 1]

my_matrix =
8 12 19
7 3 2
12 4 23
8 1 1
4 değerine ulaşmak için şöyle yazmalısınız

my_matrix(3,2)

ans = 4
Not: İlk olarak satır numarası, ve onu takiben sütun numarası yazılır.

Satır ve sütun menzillerini girerek matrisin içinden alt kümesi olacak şekilde yeni bir matris elde
edebilirsiniz. Örneğin, mat 5 satır ve 8 sütuna sahip bir matris olsun, mat(2:4,4:7) yazarak satırı 2
den 4'e kadar ve sütunu 4 den 7'ye kadar olan elemanları elde edersiniz:

new_mat = mat(2:4,4:7)

Bir matris içindeki bir sayıyı ona atama yaparak değiştirebilirsiniz.

new_mat

10
new_mat(2,3) = 1999

Eleman - Elemana İşlemler ve Matris İşlemleri

Herşeyden önce, eleman nedir onu tarif edelim: matrisin bir elemanı basit olarak matris içinde tutulan bir
sayıdır.

Örneğin, "On elemanlı bir satır vektörü" denildiğinde anlamanız gereken şey satır vektöründe on tane
sayı tutuluyor.

MATLAB dökümantasyonunu okurken sıklıkla "element-by-element" ifadesini görebilirsiniz, bu işlemler iki


aynı boyuttaki matris arasında gerçekleşir ve sonuç yine onlarla aynı boyuttadır ve işlemler matrislerin
aynı koordinatlarındaki skalarar arsında gerçekleşir.

Örneğin, iki vektörün [1 2 3] ve [4 5 6] "eleman elemana(element-by-element) çarpımı" bize [4


10 18] sonucunu verir.

MATLAB'de eleman elemana işlemler aşağıdaki gibidir.

Eleman elemana(element-by-element) çarpım: ".*"


Eleman elemana bölme: "./"
Eleman elemana toplama: "+"
Eleman elemana çıkarma: "-"
Eleman elemana üs alma: ".^"

Eleman elemana işlemlere birkaç örnek verelim (satır vektörü ile sütun vektörü arasında eleman elemana
işlem yapmaya çalıştığınızda hata vereceğini unutmayın):

a =1 2 3
b

b =4 5 6
c

c =4
5
6
d

d =1
2
3
a .* b

ans = 4 10 18
a .* c

??? Error using ==> .*


Matrix dimensions must agree.
c .* d

11
ans = 4
10
18
a .^ b

ans = 1 32 729
c .^ d

ans = 4
25
216

Eleman elemana işlemleri skalarlar ile vektörler arasında da kullanabilirsiniz. Örneğin, bir vektörün tüm
elemanlarını iki ile çarpmak istiyorsunuz; bunu vektörle 2 sayısını eleman elemana çarparsak
gerçekleştirebiliriz.

a = [1 2 3 4 5 6]

a =1 2 3 4 5 6
b = a .* 2

b = 2 4 6 8 10 12
Ve, benzer şekilde ".^", "+", and "-" işlemlerini de bir vektör ile skalar arasında kullanabilirsiniz. Birkaç
örnek görelim:

c = a .^ 2

c = 1 4 9 16 25 36
d = a + 2

d =3 4 5 6 7 8
e = a - 2

e = -1 0 1 2 3 4
Eleman elemana çarpım ve üs alma işlemlerinin önünde "." bulunurken, Eleman elemana toplama ve
çıkarma işlemlerinde neden bulunmadığına hayret etmiş olabilirsiniz. Sebebi şudur çarpma bölme ve üs
alma işlemlerinin eleman elemana olmayan matrisler için olan "*" , "/"and "^" şeklinde gösterilen çeşidi
var.

Bu bizi diğer çeşit işlemlere getirir : matris işlemleri. Örneğin, iki matrisin çarpımı, "*" ile gösterilir.

a = [1 2 3]

a =1 2 3
b = [4 ; 5 ; 6]

b =4
5
6
a * b

ans = 32
"32" sonucunu almak için, MATLAB ilk önce iki vektörün karşılıklı elemanları arasında şu işlemleri yapar:
"1*4 = 4", "2*5=10", and "3*6=18". Sonra, son cevab olan "32" yi almak için, MATLAB tüm çarpım
sonuçlarını aralarında toplar: "4+10+18=32".

Hepsini Biraraya Getirmek


Bu bölüm boyunca, matrislerin nasıl oluşturulacağını, matrisleri indislemeyi, ve matrislerde hesaplamalar
yapmayı öğrendiiz.

12
Şimdi bütün bu kavramları kullanabileceğimiz bir örneği inceleyelim. Diyelim ki sizden "x" in aralığı -
100'den 100'e olacak şekilde parabol denkleminin (y=x^2) sonucunu bulmanız istenildi. Hesapladıktan
sonra x'in-2 ile 2 aralığındaki denklemin sonucuna bakalım.

inc = 1; % kendi INC değerinizi tanımlayabilirsiniz

x = -100:inc:100;

y = x.^2; % herbir elemanın ayrı ayrı karesini alır

Not: Yukarıdaki örnek MATLAB'in etkili özelliklerinden birisidir, vektörizasyon: eşitliğin girişinde vektör
kullandığınızda, çıkışta giriş vektörünün herbir elemanının denklemde hesaplanmış değerlerine sahip
başka bir vektör elde edersiniz.

Şimdi, -2 ve 2 arasındaki denklem sonucuna bakalım. Bunu yapmak için, "x"in uzunluğunu bilmemiz
gerekli, ve "x" ve "y"yi doğru noktalarda indislememiz gerekli.

Vektör uzunluğunu ya kafadan bulacağız yada bir fonksiyon yardımıyla bulacağız

len_x = length(x)

len_x = 201
midpoint_index = round(len_x/2)

midpoint_index = 101
new_x_range = x(midpoint_index-2:midpoint_index+2)

new_x_range = -2 -1 0 1 2
new_y_range = y(midpoint_index-2:midpoint_index+2)
new_y_range = 4 1 0 1 4

Aşağıda vektörizasyon'un başka bir örneğine bakalım.

input_points = [-pi : pi/8 : pi]

input_points =
Columns 1 through 7
-3.1416 -2.7489 -2.3562 -1.9635 -1.5708 -1.1781 -0.7854

Columns 8 through 14
-0.3927 0 0.3927 0.7854 1.1781 1.5708 1.9635

Columns 15 through 17
2.3562 2.7489 3.1416

sine_curve = 3*sin(5.*input_points)
sine_curve =
Columns 1 through 7
0.0000 -2.7716 2.1213 1.1481 -3.0000 1.1481 2.1213

Columns 8 through 14
-2.7716 0 2.7716 -2.1213 -1.1481 3.0000 -1.1481

Columns 15 through 17
-2.1213 2.7716 0.0000

13
Verileri Görülebilir Hale Getirmek

Giriş
Önceki derste vektörlerin nasıl oluşturulacağını ve bir fonksiyonun girişine bu vektörü verip başka bir
vektör elde edebildiğimizi gördük. Bu derste ise, böyle vektörleri kullanarak iki-boyutlu, üç-boyutlu basit
çizimlerin nasıl yapılacağını öğreneceksiniz. MATLAB ileri çizim özelliklerine sahiptir, çok değişik türde
grafikler ve çizimler yapabilirsiniz. Bu ders çizimin temel yönlerini kapsamaktadır, daha detaylı bilgiyi
MATLAB yardım metinlerini okuyarak elde edebilirsiniz.

İki boyutta Doğru Çizimi


MATLAB'in temel çizim komutu, plot komutudur. plot komutu, eşit boyutlu X ve Y vektörleriyle
beraber kullanıldığında, X ve Y nin karşılıklı herbir değerinin iki boyutta ifade ettiği noktalar arasında
doğru çizimini gerçekleştirir: X'deki sayılar absiste (x-ekseni), ve Y'deki sayılar ordinatta (y-ekseni).
Başka bir deyişle, (X(1),Y(1)), (X(2),Y(2)), (X(3),Y(3)), ... v.b. kordinatlarında noktaları çizer ve bu
noktaları doğrularla birleştirir.

Bir örnek üzerinde plot komutunun tam olarak ne yaptığını inceleyelim. Şimdi MATLAB'de iki basit
vektör oluşturalım:

simple_x_points = [1 2 3 4 5]
simple_x_points = 1 2 3 4 5
simple_y_points = [25 0 20 5 15]
simple_y_points = 25 0 20 5 15
Sonra, bu vektörleri MATLAB'de çizmek için aşağıdakileri komut ekranında yazalım:

plot(simple_x_points, simple_y_points);
MATLAB'de doğru çizimlerini içeren bir şekil penceresi belirecektir; aşağıdaki gibi görünür.

Gördüğünüz gibi, (1,25), (2,0), (3,20), (4,5), ve (5,15) noktalarını çizdi, noktalar simple_x_points
ve simple_y_points vektörlerinden elde edildi ve bu noktalar arasına doğrular çizildi.

Tplot komutunda vektörlerin sırası önemlidir, önceki örneğimizdeki sıralamayı değiştirelim.

plot(simple_y_points, simple_x_points);
MATLAB'de şöyle bir şekil belirecektir.

14
Not: Bu doğru çiziminin yazıcı çıktısını şekil penceresinin üstündeki File->Print menüsünü kullanarak
kolayca alabilirsiniz.

Temel doğru çiziminin yanında, MATLAB'in şekillerinize başlık ve etiket ekleyebileceğiniz komutları
vardır. Bir çizime metin eklemek için şekili açık tutmalısınız.

xlabel komutu x-eksenini tanıtan bir metin yazmanıza imkan tanır; benzer şekilde, ylabel komutu
y-eksenini tanıtan bir metin yazmanıza imkan tanır. Ve title komutuda şekile başlık eklemenize
imkan verir. Çiziminize ızgara çizgilerini eklemek için "grid on" komutunu komut penceresinde
yazabilirsiniz, açık olan şekil penceresine ızgara çizgileri eklenir ("grid off" yazarak bu çizgileri
kaldırabilirsiniz). Bu komutları nasıl kullanacağınızı gösteren örnekler:

xlabel('this is text describing the x-axis');


ylabel('this is text describing the y-axis');
title('this is text giving a title for the graph');
grid on;
İlk çizdirdiğimiz şekli komutlarla nasıl değiştirdiğimizi aşağıda örebilirsiniz.

15
Çizimle ilgili daha pratik bir örneğe bakalım . "y = x^2" (bir parabol) fonksiyonunu x'in -5 ile 5
noktaları arasında 0.1 düzgün aralıklı değerleri için çizdirelim:

x_points = [-5 : .1 : 5];


y_points = x_points .^ 2;
x_points'e karşılık y_points vektörlerini çizdirerek tanıdık parabol şeklini elde edebiliriz:

plot(x_points,y_points);
xlabel('x-axis'); ylabel('y-axis'); title('A Parabola');
grid on

Not: Sonuç çok düzgün: gerçektende önceki örnekte olduğu gibi ayrık doğru parçalarını
göremiyorsunuz. Bunun sebebi noktaların birbirlerine çok yakın olmasından kaynaklanıyor (0.1 düzgün
aralıklı) --- MATLAB hala noktalar arasında doğrular çizmektedir, fakat çizgiler çok küçük olduğundan
gözünüz fark edemiyor, böylece sonuç pürüzsüz bir eğri gibi görünüyor.

Çoklu Çizimler ve Altçizimler

İsteyeceğiniz farklı bir şeyde bir şekil üzerine çok çizimler yapabilmektir, örneğin şekilleri karşılaştırmak
için gerekebilir. Bu hold komutu ile yapılabilir. Normalde, plot komutunu kullandığınızda, önceden
çizdirilmiş bir şekil varsa onu siler yeni şekli çizer. Ancak, komut penceresinde "hold on" yazarsanız,
sonraki bütün doğru çizimleri aynı şekil ve aynı eksen özellikleriyle üst üste çizilir. Keza "hold off"
komutu ise bu davranış biçimini durdurur, ve varsayılana geri döner ( yeni çizim öncekiyle değişir).Aynı
eksene birkaç değişik üssel fonksiyon çizimini bir örnek üzerinde görelim:

x_points = [-10 : .05 : 10];


plot(x_points, exp(x_points));
grid on
hold on
plot(x_points, exp(.95 .* x_points));
plot(x_points, exp(.85 .* x_points));
plot(x_points, exp(.75 .* x_points));
xlabel('x-axis'); ylabel('y-axis');
title('Comparing Exponential Functions');

16
Aynı pencereye çoklu çizim yapmanın bir türüde aynı pencereyi bölmelere ayırıp her çizimi kendi eksen
özellikleriyle çizdirmektir. Bunu subplot komutuyla yapabilirsiniz. Eğer komut penceresinde
subplot(M,N,P) yazarsanız, MATLAB çizim penceresini dikdörtgenlere böler --- Dikdörtgenlerden M
tane satır ve N tane sütun olur --- ve MATLAB sonraki "plot" komutunu P'nci dikdörtgene yerleştirir
(Birinci dikdörtgen sol üst köşededir).Aşağıda doğru çizimi, parabol, üssel fonksiyon ve mutlak değer
fonksiyon çizimi aynı şekil penceresine farklı dikdörtgenlere çizdirilecek.

x_points = [-10 : .05 : 10];


line = 5 .* x_points;
parabola = x_points .^ 2;
exponential = exp(x_points);
absolute_value = abs(x_points);
subplot(2,2,1);plot(x_points,line);
title('Here is the line');
subplot(2,2,2);plot(x_points,parabola);
title('Here is the parabola');
subplot(2,2,3);plot(x_points,exponential);
title('Here is the exponential');

17
subplot(2,2,4);plot(x_points,absolute_value);
title('Here is the absolute value');

18

You might also like