Membuat Grafik Dengan Visual Basic

Ada beberapa model tampilan diagram, misalkan diagram batang (histogram), diagram garis, diagram lingkaran (pie). Hal-hal yang perlu diperhatikan jika ingin menggambar suatu diagram antara lain :
  • Mengetahui rentang (range) data yang akan digambar. Ini digunakan agar diagram yang dihasilkan dapat dapat memuat seluruh data yang dikehendaki.
  • Menentukan ukuran dari bidang gambar yang akan digunakan.
  • Menentukan penskalaan yang akan digunakan. Ini berguna untuk memastikan keseluruhan diagram yang akan dimunculkan dapat termuat pada bidang gambar yang telah ditentukan.
  • Membuat suatu koordinat (sumbu) diagram. Ini biasanya digunakan pada diagram yang menggunakan sumbu lurus. Sedangkan diagram yang menggunakan sumbu berupa sudut (misalkan diagram pie), biasanya masalah ukuran tidak terlalu dihiraukan, karena yang dipentingkan adalah perbandingan antara tiap-tiap data.
  • Menampilkan masing-masing data ke dalam koordinat pada posisi yang sesuai dengan nilai data dan dalam bentuk seperti yang diinginkan.
Menggunakan Komponen Picture Box 
Untuk menggambar di VB dapat dilakukan di dua komponen, FORM dan PICTURE BOX, bedanya, PICTURE BOX berada di dalam FORM. Perintah-perintah yang
dapat digunakan antara lain:
- Print digunakan untuk mencetak tulisan
- Line digunakan untuk membuat garis
- Circle digunakan untuk membuat lingkaran
- Cls digunakan untuk menghapus bidang gambar
- PaintPicture digunakan untuk mencat gambar
- Pset digunakan untuk membuat titik


Ambil komponen Picture Box , atur properti warna, misalkan Back Ground Color
dengan warna putih. Set Auto Redraw = True.




Untuk uji coba pertama kali, dibuat program langsung bekerja saat program dijalankan. Untuk itu dapat dilakukan pembuatan kode program pada sub program saat event form load. Untuk itu, klik dua kali gambar form. Coba ketik program berikut,
Private Sub Form_Load()
Picture1.Print "Hallo"
Picture1.Print "Selamat Datang ";
Picture1.Print "di VB"
Picture1.Line (100, 200)-(1500, 1700)
Picture1.Line (2400, 500)-(700, 1900), , B
Picture1.Circle (2500, 1000), 500
End Sub

Yang perlu diperhatikan, VB menggunakan ukuran yang disebut dengan TWIP. Satu cm sekitar 567 TWIP.

Diagram Garis
Ambil contoh, akan menampilkan data berikut ini : 12, 45, 23, 56, 13, 35, 37, dengan asumsi, nilai sumbu x adalah 0, 1, 2, 3, 4, 5, 6. Diagram ini akan ditampilkan pada bidang seluas Lx=4000 dan Ly=2000 dengan titik awal di sumbu 0,0 pada OfsX=1000 dan OfsY=2500, maka parameter lainnya dapat dihitung,

  • SkalaX = Lx/6
  • SkalaY = Ly/60 (nilai data tertinggi adalah 56, dibulatkan menjadi 60)
  • TitikX = OfsX + x * SkalaX
  • TitikY = OfsY y * SkalaY ( koordinat sumbu Y pada layar dimulai dari ujung kiri atas)
Langkah berikutnya adalah membuat sumbu koordinat:
Picture1.Line (TitikX(0), TitikY(60))-(TitikX(0), TitikY(0))
Picture1.Line (TitikX(0), TitikY(0))-(TitikX(6), TitikY(0))
Mengambar Skala dan Angkanya:
Dim i As Integer
For i = 0 To 6
Picture1.Line (TitikX(i), TitikY(-1))-(TitikX(i), TitikY(1))
Picture1.CurrentX = TitikX(i) - Picture1.TextWidth(i) / 2
Picture1.CurrentY = TitikY(-2)
Picture1.Print i
Next
For i = 0 To 6
Picture1.Line (TitikX(-0.05), TitikY(i * 10))-(TitikX(0.05), TitikY(i * 10))
Picture1.CurrentX = TitikX(-0.5)
Picture1.CurrentY = TitikY(i * 10) - Picture1.TextHeight(i * 10) / 2
Picture1.Print i * 10
Next
Kemudian mulai mencetak gambar:
Picture1.PSet (TitikX(0), TitikY(D(0)))
For i = 1 To 6
Picture1.Line -(TitikX(i), TitikY(D(i)))
Next
  
Program lengkapnya adalah sebagai berikut:
Option Explicit
Dim OfsX As Single
Dim OfsY As Single
Dim SkalaX As Single
Dim SkalaY As Single
Private Function TitikX(x) As Single
TitikX = OfsX + x * SkalaX
End Function
Private Function TitikY(y) As Single
TitikY = OfsY - y * SkalaY
End Function
Private Sub Form_Load()
Dim D(6) As Integer
D(0) = 12
D(1) = 45
D(2) = 23
D(3) = 56
D(4) = 13
D(5) = 35
D(6) = 37
Lx = 4000
Ly = 2000
OfsX = 1000
OfsY = 2500
SkalaX = Lx / 6
SkalaY = Ly / 60
Picture1.Line (TitikX(0), TitikY(60))-(TitikX(0), TitikY(0))
Picture1.Line (TitikX(0), TitikY(0))-(TitikX(6), TitikY(0))
Dim i As Integer
For i = 0 To 6
Picture1.Line (TitikX(i), TitikY(-1))-(TitikX(i), TitikY(1))
Picture1.CurrentX = TitikX(i) - Picture1.TextWidth(i) / 2
Picture1.CurrentY = TitikY(-2)
Picture1.Print i
Next
For i = 0 To 6
Picture1.Line (TitikX(-0.05), TitikY(i * 10))-(TitikX(0.05),
TitikY(i * 10))
Picture1.CurrentX = TitikX(-0.5)
Picture1.CurrentY = TitikY(i * 10) - Picture1.TextHeight(i *
10) / 2
Picture1.Print i * 10
Next
Picture1.PSet (TitikX(0), TitikY(D(0)))
For i = 1 To 6
Picture1.Line -(TitikX(i), TitikY(D(i)))
Next
End Sub
Jika menghendaki ditambahkan grid, maka rutin untuk membuat koordinat dapat
diubah menjadi,

Dim i As Integer
For i = 0 To 6
Picture1.Line (TitikX(i), TitikY(-1))-(TitikX(i), TitikY(1))
Picture1.CurrentX = TitikX(i) - Picture1.TextWidth(i) / 2

You can leave a response, or trackback from your own site.

0 Response to "Membuat Grafik Dengan Visual Basic"

:10 :11 :12 :13 :14 :15 :16 :17
:18 :19 :20 :21 :22 :23 :24 :25
:26 :27 :28 :29 :30 :31 :32 :33
:34 :35 :36 :37 :38 :39

Posting Komentar