プロットグラフのカスタマイズ

Example 22

リリース1.27b以来、画像(GIFファイルだけがサポートされます)を1つのデータセットに関連づけることが可能になりました。 プロットのグラフを作成している間、この絵はプロットに代わります。 最初に、pDataクラスのSetSerieSymbol()を呼ぶときに、1枚の絵を1つのデータセットに関連づけてください。 図のタイトルは、30%の透明度を設定しながら、グラフ領域の上にdrawTextBox()を使用することで書かれています。
このスクリプトを実行するとカレントディレクトリにExample22.phpファイルを作成します。

Example 22
(訳注)この画像はサンプルコードのExample22.phpを出力したものです。

Example22.php ソースコード

<?php
 /*
     Example22 : Customizing plot graphs
 */

 // Standard inclusions
 include("pChart/pData.class");
 include("pChart/pChart.class");

 // Dataset definition
 $DataSet = new pData;
 $DataSet->AddPoint(array(60,70,90,110,100,90),"Serie1");
 $DataSet->AddPoint(array(40,50,60,80,70,60),"Serie2");
 $DataSet->AddPoint(array("Jan","Feb","Mar","Apr","May","Jun"),"Serie3");
 $DataSet->AddSerie("Serie1");
 $DataSet->AddSerie("Serie2");
 $DataSet->SetAbsciseLabelSerie("Serie3");
 $DataSet->SetSerieName("Company A","Serie1");
 $DataSet->SetSerieName("Company B","Serie2");
 $DataSet->SetYAxisName("Product sales");
 $DataSet->SetYAxisUnit("k");
 $DataSet->SetSerieSymbol("Serie1","Sample/Point_Asterisk.gif");
 $DataSet->SetSerieSymbol("Serie2","Sample/Point_Cd.gif");

 // Initialise the graph
 $Test = new pChart(700,230);
 $Test->setFontProperties("Fonts/tahoma.ttf",8);
 $Test->setGraphArea(65,30,650,200);
 $Test->drawFilledRoundedRectangle(7,7,693,223,5,240,240,240);
 $Test->drawRoundedRectangle(5,5,695,225,5,230,230,230);
 $Test->drawGraphArea(255,255,255,TRUE);
 $Test->drawScale($DataSet->GetData(),$DataSet->GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2,TRUE);
 $Test->drawGrid(4,TRUE,230,230,230,50);

 // Draw the title
 $Test->setFontProperties("Fonts/pf_arma_five.ttf",6);
 $Title "Comparative product sales for company A & B  ";
 $Test->drawTextBox(65,30,650,45,$Title,0,255,255,255,ALIGN_RIGHT,TRUE,0,0,0,30);

 // Draw the line graph
 $Test->drawLineGraph($DataSet->GetData(),$DataSet->GetDataDescription());
 $Test->drawPlotGraph($DataSet->GetData(),$DataSet->GetDataDescription(),3,2,255,255,255);

 // Draw the legend
 $Test->setFontProperties("Fonts/tahoma.ttf",8);
 $Test->drawLegend(80,60,$DataSet->GetDataDescription(),255,255,255);

 // Render the chart
 $Test->Render("example22.png");
?>