Cara mudah membuat grafik di PHP. Mungkin kita pernah
melihat grafik atau statistik yang menggunakan grafik di internet. Bagaimana
cara membuatnya? Mungkin itu yang pernah terlintas dan lain sebagainya yang
ingin kita ciptakan dari penggunaan grafik. PHP memiliki beberapa fungsi grafis
yang mendukung untuk membuat shape (bangun ruang) seperti garis, kotak,
lingkaran dan polygon. Tentunya dengan PHP juga kita dapat membuat grafik
dengan mudah. Ada beberapa tahapan yang bisa kita jadikan patokan. Yaitu, kita
harus punya datanya dulu yang akan dibuat grafik, jika sudah ada menentukan
bentuk grafiknya, ya… mungkin yang standar aja, contohnya grafik batang,
kemudian langkah terakhir kita mulai koding.
Tahap pertama membuat datanya dulu.
Buat database dengan nama ‘laba’
Setelah itu buat table dengan nama ‘data’
Atau bisa di copy aja struktur tabelnya
-- Struktur dari tabel `data`
CREATE TABLE `data` (
`bulan` varchar(20) NOT NULL,
`laba` int(3) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
Kemudian datanya diisi:
INSERT INTO `data` (`bulan`, `laba`) VALUES
('Januari', 200),
('Pebruari', 218),
('Maret', 211),
('April', 199),
('Mei', 119),
('Juni', 223),
('Juli', 218),
('Agustus', 217),
('September', 221),
('Oktober', 218),
('Nopember', 220),
('Desember', 219);
|
Membuat database baru dengan nama 'laba'
terus bisa di copy aja Struktur dari tabel `data` yang ada diatas.
Setelah kita punya databasenya, waktunya untuk koding, yaitu
koneksi ke databasenya, caranya ikuti ya pelan-pelan, seperti di bawah ini
kodingnya:
untuk
koneksi ke database ‘laba’ (simpan dengan nama “koneksi.php”)
|
|
1
|
<?php
|
2
|
$host="localhost";
|
3
|
$userdb="root";
|
4
|
$passdb="";
|
5
|
$namadb="laba";
|
6
|
$sambung=mysql_connect($host,$userdb,$passdb);
|
7
|
mysql_select_db($namadb,$sambung);
|
8
|
?>
|
Koding
untuk membuat grafiknya (simpan dengan nama “grafik.php”)
|
|
1
|
<?php
|
2
|
include"koneksi.php";
|
3
|
$qry=mysql_query("select * from
data");
|
4
|
$img=ImageCreate(530,280);
|
5
|
$warna[0]=ImageColorAllocate($img,0,150,0);
|
6
|
$warna[1]=ImageColorAllocate($img,255,0,0);
|
7
|
$warna[2]=ImageColorAllocate($img,0,0,255);
|
8
|
$warna[3]=ImageColorAllocate($img,255,0,255);
|
9
|
$warna[4]=ImageColorAllocate($img,255,255,0);
|
10
|
$warna[5]=ImageColorAllocate($img,128,128,128);
|
11
|
$warna[6]=ImageColorAllocate($img,255,128,0);
|
12
|
$warna[7]=ImageColorAllocate($img,0,150,255);
|
13
|
$warna[8]=ImageColorAllocate($img,112,0,255);
|
14
|
$warna[9]=ImageColorAllocate($img,128,255,0);
|
15
|
$warna[10]=ImageColorAllocate($img,40,255,153);
|
16
|
$warna[11]=ImageColorAllocate($img,0,153,255);
|
17
|
$warna[12]=ImageColorAllocate($img,255,0,0);
|
18
|
$hitam=ImageColorAllocate($img,0,0,0);
|
19
|
$putih=ImageColorAllocate($img,255,255,255);
|
20
21
|
// membuat sumbu ordinat
ImageLine($img,40,10,40,250,$hitam);
|
22
|
ImageLine($img,40,250,520,250,$hitam);
|
23
|
//Menggambar Skala tegak
|
24
|
for($i=0;$i<=250;$i+=50){
|
25
|
ImageString($img,3,10,(250-$i)+10,"$i",$hitam);
|
26
|
}
|
27
|
//menggambar skala mendatar dan balok grafik
|
28
|
$letak=50;
|
29
|
$x=1;
|
30
|
while($row=mysql_fetch_row($qry)){
|
31
|
$bulan=substr($row[0],0,3);
|
32
|
ImageString($img,3,$letak,250,"$bulan",$hitam);
|
33
|
$tinggi=(250-$row[1])+10;
|
34
|
ImageFilledRectangle($img,$letak,$tinggi,$letak+20,245,$warna[$x]);
|
35
|
$letak+=40;
|
36
|
$x++;
|
37
|
}
|
38
|
header('Content-type: image/png');
|
39
|
imagepng($img);
|
40
|
imagedestroy($img);
|
41
|
>?
|
Output setelah dijalankan
Semoga bermanfaat ^_^
sip
BalasHapus