良く使われると想定される、折れ線グラフの最もシンプルなサンプルで各実行単位の解説をコメントで付加しています。 (ソースコードは UTF-8N)
<?php // ************************************* // ライブラリの読み込み // ************************************* require_once("../pchart/class/pData.class.php"); require_once("../pchart/class/pDraw.class.php"); require_once("../pchart/class/pImage.class.php"); $main_font = "./JKG-L_3.ttf"; $ttl_font = "./lightnovelpop.ttf"; $w = 600; $h = 250; // ************************************* // データ作成 // ************************************* $MyData = new pData(); // ************************************* // 座標設定 // ※ 最後の文字列は凡例用 // ************************************* $MyData->addPoints(array(-4,VOID,VOID,12,8,3),"凡例 壱"); $MyData->addPoints(array(3,12,15,8,5,-5),"凡例 弐"); $MyData->addPoints(array(2,7,5,18,19,22),"凡例 参"); // ************************************* // X 座標の表示内容 // ************************************* $MyData->addPoints(array("1月","2月","3月","4月","5月","6月"),"横軸の月"); // 後から設定する $MyData->setAbscissa("横軸の月"); // 表示名 // ************************************* // ライン設定 // ************************************* $MyData->setSerieTicks("凡例 弐",4); // 間隔 4 の点線 $MyData->setSerieWeight("凡例 参",2); // 線幅 // デフォルトは 0 $MyData->setAxisName(0,"縦軸1"); // ************************************* // 画像のサイズ指定 // ************************************* $myPicture = new pImage($w,$h,$MyData); // ************************************* // 画像の枠線指定 // ************************************* $myPicture->drawRectangle(0,0,$w-1,$h-1,array("R"=>0,"G"=>0,"B"=>0)); // アンチエイリアス $myPicture->Antialias = TRUE; // ************************************* // 使用するフォント // ************************************* $myPicture->setFontProperties(array("FontName"=>$ttl_font,"FontSize"=>12)); // ************************************* // タイトル // drawText($X,$Y,$Text,$Format="") // ************************************* $myPicture->drawText(10,35,"ラノベポップは太めです",array("FontSize"=>20,"Align"=>TEXT_ALIGN_BOTTOMLEFT)); // ************************************* // 使用するフォント // ************************************* $myPicture->setFontProperties(array("FontName"=>$main_font,"FontSize"=>12)); // ************************************* // グラフエリアの定義 // setGraphArea($X1,$Y1,$X2,$Y2) // ************************************* $myPicture->setGraphArea(60,40,$w-70,$h-50); // ************************************* // スケールの設定 // ************************************* $scaleSettings = array( "XMargin"=>10, "YMargin"=>10, "Floating"=>TRUE, // 座標外(マージン)をクリア "GridR"=>100,"GridG"=>100,"GridB"=>100, // グリッド線の色 "DrawSubTicks"=>TRUE, // 目盛の中心に目盛 "CycleBackground"=>TRUE // 交互に色を付ける ); // ************************************* // スケールの描画 // ************************************* $myPicture->drawScale($scaleSettings); // ************************************* // グラフの描画 // ************************************* $myPicture->drawLineChart(); // ************************************* // 凡例の描画 // drawLegend($X,$Y,$Format="") // ************************************* $myPicture->drawLegend(350,20,array("Style"=>LEGEND_NOBORDER,"Mode"=>LEGEND_HORIZONTAL)); // ************************************* // 表示 // ************************************* $myPicture->stroke(); ?>
ちなみに、画像として img 要素に記述する場合は、php の最後に ? を付けておくと、右クリックで画像保存する際に .png として名前付けされました( Google Chrome で確認 )
|
【PHP + 特記事項の最新記事】
- PHP のファイルアップロードで画像ファイルを限定で行う為のテンプレートと注意事項と解説
- PHP : 指定ファイル名でダウンロード 『application/octet-stream』 と 『Content-disposition: attachment』
- PHP の関数で規定されているキャッシュコントロールの無効 : session_cache_limiter( 'nocache' )
- PHP : 一定時間前のファイルの削除
- PHP : ${'日本語表示'} という可変変数と、${hello . "X"} という連結可変変数
- cp932 の SQLServer に対して、PHP の ODBC 関数に対して UTF8 変換で地道に対応し、特殊なUncode文字は、HTML 数値エンティティで保存する。
- PHP の ImageMagick で作成した PNG 画像にオフセットが設定されてしまった場合の対応方法
- PHP : 連想配列を「オブジェクト」に変換(キャスト)するとうまく動きますが、通常配列では参照できないようです
- PHP でエラーが表示されない場合の ini_set( 'display_errors', "1" ) 使用時の注意事項
- 特に変更しても支障の無い error_append_string php.ini ディレクティブを使用して PHP 全体のデバッグに利用する
- PHP : 日本語を使った変数( 特殊文字列で変数 ) / 変数名を文字列として扱う
- PHPの真偽値
- PHP : include_path の設定
- PHP : 漢字スペースも trim