그래프 생성을 위해 Google Charts를 사용합니다.
☞ Google Charts 란?
Google Charts는 구글이 제공하는 그래프 작성 서비스로, JavaScript를 사용해 그래프를 작성 및 표시할 수 있습니다.
● Google Charts
https://developers.google.com/chart/
● Google Charts 이용 규약
Google Charts 그래프의 종류는 AreaChart, Bubble Chart 등 여러가지가 있습니다. 먼저 그래프 데이터, 옵션, 차트 유형으 세 개를 받아 그래프를 그리는 JavaScript 함수와 해당 그래프를 그리는 <div> 태그를 반환하는 사용자 정의 함수 makeChart Parts()를 작성합니다.
● makeChartParts() 함수 (make_chart_parts.php)
<?php
// 그래프를 그리는 JS 함수와 그래프를 표시하는 <div> 태그를 생성하는 사용자 정의 함수을 만듭니다.
function makeChartParts($data, $options, $type)
{
static $index = 1;
$package = 'corechart';
$special_type = array('GeoChart', 'AnnotatedTimeLine','TreeMap', 'OrgChart',
'Gauge', 'Table', 'TimeLine', 'GeoMap', 'MotionChart');
if (in_array($type, $special_type)) {
$package = strtolower($type);
}
$load = 'google.load("visualization", "1", {packages:["' . $package . '"]});';
$jsData = json_encode($data);
$jsonOptions = json_encode($options);
// 그래프를 그리는 JS 함수를 생성합니다.
$chart = <<<CHART_FUNC
{$load}
google.setOnLoadCallback(drawChart{$index});
function drawChart{$index}() {
var data = {$jsData};
var chartData = new google.visualization.arrayToDataTable(data);
var options = {$jsonOptions};
var chartDiv = document.getElementById('chart{$index}');
var chart = new google.visualization.{$type}(chartDiv);
chart.draw(chartData, options);
}\n
CHART_FUNC;
// 그래프를 표시하는 <div> 태그를 생성합니다.
$div = '<div id="chart' . $index . '"></div>';
$index++;
return array($chart, $div);
}
?>
'웹코딩 > PHP' 카테고리의 다른 글
막대형 그래프 생성 Google Charts (2) | 2016.10.24 |
---|---|
배열로 받은 반환값을 변수에 대입 list() 함수 (0) | 2016.10.22 |
숫자의 반올림, 올림, 버림 round() 함수, ceil() 함수, floor() 함수 (0) | 2016.10.20 |
조건으로 처리를 분기하려면? if문 | elseif문 | else문 (0) | 2016.10.07 |
미리 정의된 상수를 알고 싶을 때 get_defined_constants()함수, define() 함수 (0) | 2016.10.07 |