↑ Return to Buku PHP & MySQL

Membuat Grafik dengan PHP (2)

Membuat tampilan grafik dengan PHP dari data MySQL tidak sesulit yang diperkirakan. Salah satu hal yang membuat mudah karena adanya library “JPGraph”. Script Library ini dapat di download di http://hem.bredband.net/jpgraph/jpgraph-1.27.tar.gz. File dengan ukuran sebesar 4.5 Mb ini terbagi atas dokumentasi program, contoh, dan library-nya. Pada folder ‘Examples’ kita dapat melihat banyak contoh-contoh script PHP untuk membuat bentuk-bentuk grafik yang kita inginkan. Dalam contoh script di bawah ini kita akan mencoba membuat grafik omzet penjualan barang berbentuk batang secara horizontal. Diasumsikan anda sudah mempunyai table ‘t_jual’ dengan struktur ‘customer’ (nama customer) dan ‘jual’ (jumlah penjualan).

jual;
$datax[]=$rowdtl->customer;
}

// lebar frame grafik
$width=800;
// pakai baris dibawah bila tinggi frame grafik fixed
//$height=480;
// pakai baris dibawah bila tinggi frame grafik mengikuti banyaknya data
$height=(mysql_num_rows($qrydtl))*30;

// Parameter awal grafik
$graph = new Graph($width,$height,’auto’);
$graph->SetScale(“textlin”);

// set parameter ke ‘true’ bila grafik menggunakan frame
$graph->SetFrame(true);

// grafik diputar 90 derajat agar ditampilkan secara horizontal
$graph->Set90AndMargin(180,10,60,10);

// set warna margin
$graph->SetMarginColor(‘lightblue’);

// buat box di sekeliling area
$graph->SetBox();

// pakai baris dibawah bila area grafik ingin berwarna gradient
//$graph->SetBackgroundGradient(‘white’,’lightblue’,GRAD_HOR,BGRAD_PLOT);

// set judul grafik
$graph->title->Set(“Grafik Penjualan”);
$graph->title->SetFont(FF_VERDANA,FS_BOLD,10);
$graph->subtitle->Set(“Value dalam jutaan”);

// set nama customer di x-axis
$graph->xaxis->SetTickLabels($datax);
$graph->xaxis->SetFont(FF_VERDANA,FS_NORMAL,8);

// set label margin
$graph->xaxis->SetLabelMargin(10);

// posisi label X-axis
$graph->xaxis->SetLabelAlign(‘right’,’center’);

// Add some grace to y-axis so the bars doesn’t go
// all the way to the end of the plot area
$graph->yaxis->scale->SetGrace(20);

// pakai baris dibawah bila y-axis ditampilkan
//$graph->yaxis->Hide();

// memulai grafik
$bplot = new BarPlot($datay);
// pakai baris dibawah bila menginginkan grafik berbayang-bayang
//$bplot->SetShadow();

//You can change the width of the bars if you like
$bplot->SetWidth(0.75);

// warna grafik gradient ungu
//$bplot->SetFillGradient(‘darkred’,’orange’,GRAD_HOR);
$bplot->SetFillGradient(“navy”,”#EEEEEE”,GRAD_LEFT_REFLECTION);

// tampilkan value pada tiap grafik
$bplot->value->Show();
$bplot->value->SetFont(FF_ARIAL,FS_BOLD,10);
$bplot->value->SetAlign(‘left’,’center’);
$bplot->value->SetColor(“black”);
$bplot->value->SetFormat(‘%.1f’);
// set parameter ‘max’ bila value ada di puncak grafik
//$bplot->SetValuePos(‘max’);

// set warna frame grafik
$bplot->SetColor(“white”);

// menambahkan bar pada grafik
$graph->Add($bplot);

// teks tambahan pada grafik
/*
$txt = new Text(‘Note: value dalam juta’);
$txt->SetPos(190,399,’center’,’bottom’);
$txt->SetFont(FF_ARIAL,FS_NORMAL,8);
$graph->Add($txt);
*/
// menggambar grafik
$graph->Stroke();
?>

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Captcha Garb (1.5)