PHPでグラフ作成!グラフ描画のための基本方法解説

PHPでグラフを表示させたいと言われたとき、どんな方法を使いますか?

データベースにためられた数値データを画像にする。

それは、PHPそのままの機能では実装が難しい事なのです。

本日は、PHPにグラフを表示させる方法を以下の内容でお話します。

PHPでグラフを描画するには
JpGraphを使用して棒グラフを描画する方法
JpGraphを使用して折れ線グラフを描画する方法

PHPでのグラフの描画についてわかりやすく解説していますので、ぜひ参考にしてください。

PHPでのグラフ描画の方法

冒頭でも説明した通り、PHPそのままの機能ではグラフの実装はとても難しいです。

出来ないわけではないのですが、とても労力がかかるのでおすすめできません。

ここでは、PHPでグラフを表示するための方法として2つ紹介します。

javascriptを使用する方法

javascriptはプログラム言語の一種です。

javascriptについて詳しく知りたい方は以下を参考にしてください。


JavaとJavaScriptって何が違うの?わかりやすく4つの違いで徹底分析
更新日 : 2020年8月19日


Webブラウザ等に表示される要素を操作する事が出来ます。

つまり、データをブラウザに渡して画像となる要素を操作、グラフ表示ができるという事です。

ただ、javascriptの基本的な事を知らないとハードルは高いです。

ライブラリを使用する方法

続いて紹介する方法はライブラリを使用する方法です。

世の中には、PHPでグラフを表示させるためのライブラリが沢山あります。

有名なところでは


JpGraph
pChart

などがあります。

個人の使用では無料ですが、商用利用では有料の場合がありますのでよく確認しましょう。

使い方は、PHPファイルの中でライブラリを読み込んで使用します。

以上、PHPでグラフを表示するために2つの方法を紹介しました。

一番シンプルに試す事ができるのはライブラリを使用する方法です。

次章から、ライブラリを使ってグラフを表示するサンプルを解説していきます。

JpGraphを使用して棒グラフを描画しよう

前章でPHPのグラフ表示として一番おすすめなのは「ライブラリ」を使用する方法だとお話しました。

今回はJpGraphライブラリを使用するして、実際どんなコードでグラフを表示出来るのか説明します。

<?php
// ダウンロードした以下のファイルを読み込む
require_once ('/home/samurai/jpgraph.php');
require_once ('/home/samurai/jpgraph/jpgraph_bar.php');

// 縦軸のデータ
$x_data = array(1,5,10);

// グラフの生成
$graph = new Graph(400, 300);
$graph->SetScale('textlin');

$graph->SetMarginColor('white');

// タイトル
$graph->title->Set('samurai_graph');

// グラフ表示
$bar = new BarPlot($x_data);
$bar->value->Show();
$graph->Add($bar);
$graph->Stroke();

?>

結果画像

棒グラフを表示することができました。

コメントに書いていますが、プログラムの流れとしては

ダウンロードしたファイルを読み込む
データを記述をする
グラフを生成するための記述する
タイトルや背景色の設定などの記述をする
グラフ表示のための記述をする

という流れです。

背景やグラフの色も変更する事ができます。

JpGraphを使用して折れ線グラフを描画しよう

続いて、JpGraphライブラリを使用して、折れ線グラフを表示してみましょう。

前章で使用したコードを修正していきます。

<?php
require_once ('/home/samurai/jpgraph.php');
// 折れ線グラフ用のファイルを読み込む
require_once ('/home/samurai/jpgraph/jpgraph_line.php');

$x_data = array(8, 4, 10);

// グラフの生成
$graph = new Graph(400, 300);
$graph->SetScale('textlin');

$graph->SetMarginColor('white');

// タイトル
$graph->title->Set('samurai_graph');

// グラフ表示
$bar = new LinePlot($x_data);
$bar->value->Show();
$graph->Add($bar);
$graph->Stroke();

?>

結果画像

折れ線グラフを表示することができました。

棒グラフと記述を変えた部分は以下です。

<?php
//ダウンロードしたファイルを読み込む
require_once ('/home/samurai/jpgraph/jpgraph_bar.php');
↓
require_once ('/home/samurai/jpgraph/jpgraph_line.php');
?>
<?php
// グラフ表示
$bar = new BarPlot($x_data);
↓
$bar = new LinePlot($x_data);
?>

棒グラフと折れ線グラフでは使用ファイルが違う事に注意です。

また、以下の公式ページにサンプルが沢山掲載されていますので、イメージに合うものを選んで試してみてください。

https://www.asial.co.jp/jpgraph/examples.php

まとめ

今回はPHPでグラフ表示する方法について解説しました。

一つの課題を解決するのにも色々な方法があります。

どんな方法があるのか、メリット・デメリットはあるかを覚えておくと方法選択をする時に役に立ちます。

それでは、また。

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

つぶらや

つぶらや

独学PG&SE、東京在住30代女性。
誰でもプログラマーになれるがモットーで、わかりやすい記事を目指しています。