グラフサンプル (No.-35) グラフ名:円グラフ 画像名:sample92.gif CGI名:sample92.pl
sample92.gif


【要点】
(1)円グラフを描く
   GD::Graph::pie; #円グラフ
   $my_graph = new GD::Graph::pie( 250, 200 );
              #()内の数字は、グラフキャンバスの大きさ
(2)(X軸または)円グラフの扇型に表示するラベルの色を指定する
  axislabelclr 	=> 'white', #白
(3)色を指定する
  dclrs => [ 'lblue' ], #棒、線、点、円グラフ等の背景色。青。
(4)アクセント(棒グラフ、領域グラフ及び円の外枠)を指定する
  accentclr => 'lgray', #グレイ
(5)その他
  ・最初のデータの描き出し角度start_angleが省略のため
    真下(時計の6時のところ)から描かれています。
  ・3Dオプション3dが省略のため、3Dで描かれています。
  ・円の厚み指定pie_heightが省略のため、厚みは=0.1×200=20 。
    200は、$my_graph = new GD::Graph::pie( 250,200); のHeight値。
sample92.pl

chdir("C:\\Inetpub\\wwwroot\\uriage"); #カレントディレクトリ指定(IISの場合)
use lib 'C:/Inetpub/wwwroot/uriage'; #GD::Graphライブラリ格納フォルダ GD (固定)の場所
use jcode; #jcode.pl PM版。UTF-8コード変換に使用
use GD::Graph::pie;
require 'save.pl';

print STDERR "Processing sample92\n";

@data = ( 
    ["1st","2nd","3rd","4th","5th","6th"],
    [    4,    2,    3,    4,    3,  3.5]
);
$title="円チャート";                                 #X軸ラベル文字
Jcode::convert(\$title,'utf8',"sjis");       #X軸ラベル文字のUTF-8への変換

$my_graph = new GD::Graph::pie( 250, 200 );

$my_graph->set( 
    title 		=> $title, #'A Pie Chart', #タイトルを日本語に変更
    label 		=> 'Label',
    axislabelclr 	=> 'white',
    dclrs 		=> [ 'lblue' ],
    accentclr 		=> 'lgray',

    transparent 	=> 0,
);

$my_graph->set_title_font('./dasaji_win.ttf', 18); #cetus.ttfからダサ字に変更
$my_graph->set_label_font('./dasaji_win.ttf', 12); #cetus.ttfからダサ字に変更
$my_graph->set_value_font('./dasaji_win.ttf', 10); #cetus.ttfからダサ字に変更

$my_graph->plot(\@data);
save_chart($my_graph, 'sample92');


(参考)
  ●本ソースコードの1〜3行目(挿入) 1 chdir("C:\Inetpub\wwwroot\uriage"); #カレントディレクトリ指定(IISの場合) 2 use lib 'C:/Inetpub/wwwroot/uriage'; #GD::Graphライブラリ格納フォルダ GD (固定)の場所 3 # Windows IIS 走行用に元ソースに挿入   ●>save.pl(グラフ画像保存ルーチン)

最終更新日:2005.1.17