Handout 13 Grafik PDF
Handout 13 Grafik PDF
grafik batang kita buat menggunakan CSS sedangkan panjang pendeknya grafik batang
tersebut tergantung jumlah data yang kita hitung menggunakan script PHP.
Untuk membuat sebuah batang dengan CSS, kita cukup membuat tag seperti ini:
Atribut ‘height’ digunakan untuk mengatur lebar dari batang (dalam hal ini menggunakan
satuan pixel). Selanjutnya ‘width’ untuk menentukan panjang batang. Anda bisa
menggunakan satuan pixel maupun prosentase. Bila Anda menggunakan prosentase maka
prosentase yang dimaksud adalah relatif terhadap panjang jendela browser. Misalkan
diberikan ‘width: 10%’ maka panjang batang adalah 10% dari panjang jendela browser.
Sedangkan atribut ‘background-color’ untuk mengatur warna batang, dan ‘title’ untuk
memberikan title dari batang tersebut. Efek pemberian ‘title’ untuk memunculkan keterangan
(tool tips) ketika mouse mengenai batang tersebut.
Untuk mengatur panjang pendeknya batang dengan menggunakan skala. Kita tentukan
panjang grafik maksimum adalah 30% dari panjang jendela browser. Karena 30% ini panjang
maksimum, maka kejadian ini akan terjadi ketika ada item data yang jumlahnya 100%.
Sebagai contoh misalkan ada 10 mahasiswa, dan semuanya pria (prosentase pria 100%).
Dengan demikian grafik batang untuk pria ini panjangnya adalah 30%. Dari asumsi ini, kita
tinggal atur skalanya berarti untuk item data sejumlah n% maka panjang batangnya adalah
(n*30/100)%.
Dengan demikian, berdasarkan ide di atas berarti sebelum mulai membuat grafiknya, kita
harus dapatkan dulu data prosentase setiap item data, dalam hal ini jumlah laki-lakinya
berapa prosen begitu pula perempuannya. Setelah jumlah prosentase masing-masing
diketahui, barulah kita gunakan untuk mengatur panjang grafik batang menggunakan skala.
Adapun script untuk menampilkan grafik adalah sebagai berikut :
grafik.php
<?php
// koneksi ke mysql
?>
3. chart berbentuk garis yang merepresentasikan jumlah total penduduk negara A untuk
setiap tahun.
Downloadlah modul jpGraph kemudian simpan satu folder pada script di bawah ini.
chart1.php
<?php
include ("modul/jpgraph.php");
include ("modul/jpgraph_line.php");
// koneksi ke db
mysql_connect("localhost","deni","deni");
mysql_select_db("grafik");
// query SQL untuk mencari jumlah totol penduduk untuk setiap tahun pada negara A
$query = "SELECT tahun, jmlpria + jmlwanita as jum FROM sensus WHERE negara = 'A'";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
// hasil data query ditambahkan ke dalam array jumlah pendudukan dan tahun
array_unshift($dataJum, $data['jum']);
array_unshift($dataTh, $data['tahun']);
}
// membuat grafik dengan size 300x200 px
$graph = new Graph(300,200,"auto");
$graph->SetScale("textlin");
chart2.php
<?php
include ("modul/jpgraph.php");
include ("modul/jpgraph_line.php");
include ("modul/jpgraph_bar.php");
$dataJum = array();
$dataTh = array();
mysql_connect("localhost","deni","deni");
mysql_select_db("deni");
$query = "SELECT tahun, jmlpria + jmlwanita as jum FROM sensus WHERE negara = 'A'";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
array_unshift($dataJum, $data['jum']);
array_unshift($dataTh, $data['tahun']);
}
$graph = new Graph(300,200,"auto");
$graph->SetScale("textlin");
$graph->img->SetMargin(40,20,20,40);
$graph->title->Set("Grafik Jumlah Penduduk Negara A");
$graph->xaxis->title->Set("Tahun");
$graph->yaxis->title->Set("Jumlah");
$graph->xaxis->SetTickLabels($dataTh);
$graph->title->SetFont(FF_FONT1,FS_BOLD);
$lineplot->SetColor("blue");
$bplot->SetFillColor("red");
$graph->SetShadow();
$graph->Stroke();
?>
chart3.php
<?php
include ("modul/jpgraph.php");
include ("modul/jpgraph_line.php");
include ("modul/jpgraph_bar.php");
$dataPria = array();
$dataWanita = array();
$dataNegara = array();
// koneksi ke mysql
mysql_connect("localhost","deni","deni");
mysql_select_db("deni");
// query SQL untuk menampilkan nama negara dan jumlah prianya pada tahun 1990
$query = "SELECT negara, jmlpria, jmlwanita FROM sensus WHERE tahun = '1990' ORDER
BY negara DESC";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
// menambahkan data hasil query ke array
array_unshift($dataNegara, $data['negara']);
array_unshift($dataPria, $data['jmlpria']);
array_unshift($dataWanita, $data['jmlwanita']);
}