グラフを生成する共通のパターンは
もちろん、生成した画像をブラウザで表示するために、画像生成スクリプトをブラウザから呼び出すこともできます。
また GET や POST などの HTTP パラメータを使用して、引数を画像スクリプトに手渡すことも可能です。 たとえば、
<img src="showgraph.php?a=1&b=2">これにより、画像の見た目を制御したり、表示させる画像を変更したりすることができます。ただし、この方法で大量のデータを送信することは推奨しません。代わりに、データベースなどから大容量のデータを取得する方法があります。 大容量のデータをイメージ スクリプトに送るもうひとつの方法としては、イメージ スクリプトに POST リクエストを作成する方法があります。
echo '<img src="myimagescript.php?dummy='.now().'">';ブラウザの内部のキャッシュ機能を認識することも重要です。動的に生成された画像で最もよく起こる問題は、画像生成のスクリプト(ファイル)が同じものを表示してしまうことです。 これは、データが変更されていないとブラウザが認識してしまい、そして、キャッシュされたデータがあると、ファイルのタイムスタンプが同じ場合キャッシュされたデータを使用するので、新しい GET リクエストが送られることはありません。
画像を生成するスクリプトは次のような構造になります。
// ...必要なスクリプトをincludeする部分
$graph = new Graph($width,$height,...);
// ...グラフの細部を設定する部分
$graph->Stroke();
JpGraph は完全にオブジェクト指向に基づいており、すべての呼び出しはクラスのインスタンスを用いて行われます。その基本クラスの 1 つとして、グラフすべての基となる Graph() クラスが挙げられます。
Graph() オブジェクトを作成したあとで、プログラム コードを追加していきグラフの細部を構築していきます。
イメージ スクリプトで呼ばれる最後のメソッドは、そのほとんどがGraph::Stroke() メソッドとなります。 これによって構築された画像がブラウザに送り返されます。 グラフにイメージ マップを使用する場合は、別の表示用関数を使用します。 この場合、最後に呼び出す関数はGraph::StrokeCSIM()となります。
加えて、Graph::Stroke()関数は以下のような場合にも使用します。
キャッシュ システムは PHP サーバーの負荷を削減するために用意されています。 最初の Graph() オブジェクトの呼び出しの時点で、既に画像を作成済みかどうかを確認し、その場合は以前に保存している画像をブラウザへと送信します。 キャッシュ システムを利用する場合は、キャッシュのファイル名とキャッシュの存続期間を指定する必要があります。
このマニュアル内の多くのサンプルでは以下の構文が使用されています。
$graph = new Graph(300,200,"auto");このサンプルでは、最初の 2 つの引数はグラフの横幅と縦幅を指定しています。3 番目の引数は、キャッシュ ディレクトリに保存するファイル名を指定しています。"auto"は、キャッシュ ファイル名をスクリプトと同じ名前にすることを意味します。ただし、拡張子はグラフの形式に合わせ、.jpg や .png に変換されます。
キャッシュ システムはデフォルトでは無効になっており、"jpg-config.inc.php" ファイル内で適切に設定することで有効になります。