Rabu, 11 Januari 2017

Grafik 2 Dimensi


GRAFIK 2 DIMENSI

4.1. Plot 2 Dimensi

Untuk memvisualisasi data secara 2 dimensi ataupun 3 dimensi, kita menggunakan berbagai command plotting; di mana command yang paling dasar ialah plot. Anda bisa praktekkan contoh berikut ini.

>> x = 1:8; y=[20 22 25 30 28 25 24 22];
>> plot(x,y)

Untuk menambahkkan judul, label, dan grid ke dalam hasil plot anda, digunakan command berikut ini.

  •  xlabel : Memberi label pada sumbu-x
  •  ylabel : Memberi label pada sumbu-y
  •  title : Memberi judul di atas area plot
  •  grid on : Memunculkan grid di dalam area plot
  •  grid off : Menghapus grid

Sekarang mari kita lihat contoh plot yang lain. Kita akan memplot kurva y=x3 pada rentang x = -3 hingga x = +3.

>> clear 
>> x=-3:0.1:3; %inkremen=0.1 agar kurva terlihat mulus 
>> y=x.^3; 
>> plot(x,y) 
>> xlabel('Sumbu X'), ylabel('Sumbu Y') 
>> title('Kurva Y=X^3') 
>> grid on




Ketika kita mengunakan command plot, gambar sebelumnya di figure window akan terhapus. Lau bagaimana jika kita ingin memplot beberapa fungsi dalam satu figure sekaligus? Dalam hal ini kita bisa gunakan command hold.
  •  hold on, untuk .menahan. gambar sebelumnya supaya tidak terhapus ketika ditimpa gambar baru.
  •  hold off, untuk menonaktifkan command hold

Berikut ini contoh memplot beberapa kurva eksponensial negatif sekaligus.

>> clear 
>> x=linspace(0,5,500);
 >> y1=exp(-x); plot(x,y1); 
>> grid on >> hold on 
>> y2=exp(-0.5*x); plot(x,y2); 
>> y3=exp(-0.25*x); plot(x,y3); 
>> y4=exp(-0.1*x); plot(x,y4); 
>> xlabel('sumbu-x'), ylabel('sumbu-y')
>> title('Perbandingan fungsi eksponensial negatif')



4.2. Lebih Jauh Mengenai Plot

Kita mungkin ingin memplot beberapa fungsi dalam beberapa figure window yang terpisah, atau membagi satu window menjadi sejumlah area plot, ataupun mengatur properties dari plot yang akan digambar. Beberapa command di bawah ini bisa digunakan untuk tujuan tersebut.

  •  figure, menciptakan figure window baru yang kosong dan siap untuk di-plot
  •  figure(k), untuk ‘menduduki’ figure window nomor-k
  •  subplot(m.n.k), membagi figure window menjadi m-baris x n-kolom area plot yang terpisah, dan menduduki area ke-k
  •  clf, ‘clear figure’, mengosongkan figure window yang sedang ‘diduduki’.
Plot(x,y,.string.), menciptakan plot 2-dimensi dari vektor x versus vektor y, dengan property yang ditentukan oleh string,

Misalkan sebagai contoh :
  •  plot(x,y,’r-’), memplot x versus y dengan garis utuh warna merah
  •  plot(x,y,’k*’), menempatkan tanda * warna hitam untuk setiap titik x versus y.
  •  plot(x,y,’g--s’), Memplot dengan garis putus-putus warna hijau dan menempatkan tanda bujur sangkar di setiap titik x versus y.
Perlu diingat bahwa ‘string’ dalam plot bersifat opsional. Apabila tidak dituliskan maka digunakan garis utuh warna biru.
  •  plot(z1,y1,’string1’, x2,y2,’string2’,x3,y3,’string3’,…….); Menciptakan sejumlah plot sekaligus dalam satu area plot: x1 versus y1 dengan property stirng1, x2 versus y2 dengan property string2, dan seterusnya.
  •  legend(‘ket1’, ‘ket2’, ‘ket3’, ……); Menambahkan legenda ke dalam plot yang telah dibuat, ket1 untuk plot pertama, ket2 untuk plot kedua, dan seterusnya.
  •  axis off; Menghilangkan tampilan sumbu koordinat pada plot
  •  axis on ; Menampakkan kembali sumbu koordinat
  •  axis([x_awal x_akhir y_awal y_akhir]); Membuat tampilan area plot pada batas-batas nilai x=x_awal hingga x_akhir, dan nilai y=y_awal hingga y_akhir.
  •  axis equal; Mengubah skala sumbu-x dan sumbu-y menjadi sama.
  •  axis square; Mengubah bentuk area plot menjadi bujur sangkar.
Berbagai fungsi yang berkaitan dengan plot di atas, berlaku pula untuk plot diskrit, plot logaritmik dan plot dalam koordinat polar. Kini saatnya mencoba berbagai command di atas dalam contoh berikut ini. Pertama, kita akan mencoba memplot kurva eksponensial negatif.
    >> clear 
    >> x=linspace(0,5,500); 
    >> y1=exp(-x); y2=exp(-0.5*x); y3=exp(-0.25*x); 
    >> y4=exp(-0.1*x); 
    >> plot(x,y1,x,y2,x,y3,x,y4) 
    >> grid on 
    >> xlabel('sumbu-x'), ylabel('sumbu-y')
    >> title('Kurva y = exp(-Ax)') >> legend('A=1','A=0.5','A=0.25','A=0.1')
      Kemudian, kita coba memplot kurva tersebut dalam skala semilogaritmik.
        >> figure 
        >> semilogy(x,y1,x,y2,x,y3,x,y4) 
        >> grid on 
        >> xlabel('sumbu-x'), ylabel('sumbu-y') 
        >> title('Kurva y = exp(-Ax)') 
        >> legend('A=1','A=0.5','A=0.25','A=0.1')
          Misalkan kita ingin menyempitkan area plot pada y =1 hingga 10-2 saja, maka :
            >> axis([0 5 1e-2 1])

            Dalam contoh kedua, kita akan memplot gelombang sinus, cosinus, kotak, dan gigi ergaji dengan melibatkan command subplot.

            >> figure 
            >> t=0:0.05:10;
            >> sinus=sin(2*pi*0.25*t); 
            >> cosinus=cos(2*pi*0.25*t); 
            >> kotak=square(2*pi*0.25*t); 
            >> gigi=sawtooth(2*pi*0.25*t); 
            >> subplot(2,2,1); 
            >> plot(t,sinus), title('sinus 1/4 Hz') 
            >> subplot(2,2,2); 
            >> plot(t,cosinus), title('cosinus 1/4 Hz') 
            >> subplot(2,2,3); 
            >> plot(t,kotak), title('kotak 1/4 Hz') 
            >> subplot(2,2,4); 
            >> plot(t,gigi), title('gigi gergaji 1/4 Hz')


            Dalam contoh berikutnya, kita akan mencoba memplot suatu fungsi matematis dalam koordinat polar. Diinginkan plot fungsi :

            ñ = sin2(3è)

            Dalam Matlab dituliskan

            >> figure
            >> theta=linspace(0,2*pi,500);
            >> rho=(cos(theta.*3)).^2;
            >> polar(theta,rho);

            Terimakasih





            Tidak ada komentar:

            Posting Komentar