高品質のグラフィックス

Example 23

リリース1.27bから背景(全部の絵またはグラフ域だけ)をカスタマイズすることが可能になりました。 この例に、我々はdrawGraphAreaGradient()を呼んでいて、 背景(全部の絵)TARGET_BACKGROUNDである目標を指定している背景を満たしています。 我々は二度目に、目標を指定していないこの機能を呼んでいます、デフォルトで、それはグラフ域に適用されます。 グラフのタイトルは、絵、塗りつぶしの色、テキスト調整の左である箱立場を指定した状態でdrawTextBox()機能を呼び書かれます。我々は、影をテキストと90度回転して適用してもいます。背景ボックスの透明度は、30%に設定しています。
最後に、我々は絵のまわりで2px黒い境界を引くために、addBorder()機能を呼んでいます。 それが絵の大きさを変更するので、この呼び出しは絵を描いているチャートの終わりにされなければなりません。

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

Example23.php ソースコード

<?php
 /*
     Example23 : Playing with background bis
 */

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

 // Dataset definition
 $DataSet = new pData;
 $DataSet->AddPoint(array(9,9,9,10,10,11,12,14,16,17,18,18,19,19,18,15,12,10,9),"Serie1");
 $DataSet->AddPoint(array(10,11,11,12,12,13,14,15,17,19,22,24,23,23,22,20,18,16,14),"Serie2");
 $DataSet->AddPoint(array(4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22),"Serie3");
 $DataSet->AddAllSeries();
 $DataSet->RemoveSerie("Serie3");
 $DataSet->SetAbsciseLabelSerie("Serie3");
 $DataSet->SetSerieName("January","Serie1");
 $DataSet->SetSerieName("February","Serie2");
 $DataSet->SetYAxisName("Temperature");
 $DataSet->SetYAxisUnit("�C");
 $DataSet->SetXAxisUnit("h");

 // Initialise the graph
 $Test = new pChart(700,230);
 $Test->drawGraphAreaGradient(132,173,131,50,TARGET_BACKGROUND);

 $Test->setFontProperties("Fonts/tahoma.ttf",8);
 $Test->setGraphArea(120,20,675,190);
 $Test->drawGraphArea(213,217,221,FALSE);
 $Test->drawScale($DataSet->GetData(),$DataSet->GetDataDescription(),SCALE_ADDALL,213,217,221,TRUE,0,2,TRUE);
 $Test->drawGraphAreaGradient(163,203,167,50);
 $Test->drawGrid(4,TRUE,230,230,230,20);

 // Draw the bar chart
 $Test->drawStackedBarGraph($DataSet->GetData(),$DataSet->GetDataDescription(),70);

 // Draw the title
 $Title "  Average Temperatures during\r\n  the first months of 2008  ";
 $Test->drawTextBox(0,0,50,230,$Title,90,255,255,255,ALIGN_BOTTOM_CENTER,TRUE,0,0,0,30);

 // Draw the legend
 $Test->setFontProperties("Fonts/tahoma.ttf",8);
 $Test->drawLegend(610,10,$DataSet->GetDataDescription(),236,238,240,52,58,82);

 // Render the picture
 $Test->addBorder(2);
 $Test->Render("example23.png");
?>