■sample62.gif
【要点】
(1)混合グラフを書く
GD::Graph::mixed; #円グラフ以外の組み合わせでグラフを
#描きます。
my $my_graph = new GD::Graph::mixed();
#円グラフ以外(太字はグラフの種類)とは、
#GD::Graph::lines:折れ線グラフ
#GD::Graph::bars and GD::Graph::bars:棒グラフ
#GD::Graph::points:点グラフ
#GD::Graph::linespoints:折れ線と点のグラフ
#GD::Graph::area:面グラフ です。
(2)2つのY軸を使用する
two_axes => 1, #2つのY軸を使用する(デフォルトは0)
(3)軸目盛を描く
y1_max_value => 10, #Y1(左)軸目盛の最大値
y2_max_value => 2.5, #Y2(右)軸目盛の最大値
y_min_value => 0, #Y(左右)軸目盛の最小値
y_tick_number => 5, #Y軸目盛の数
long_ticks => 1, #Y軸の目盛線を箱いっぱいに引く
x_ticks => 0, #X軸目盛線を描きません。デフォルトは、1(描く)。
(4)グラフの種類を指定する
types => [qw ( bars lines ) ], #縦棒barsと折れ線lines
|
|
■sample62.pl
chdir("C:\\Inetpub\\wwwroot\\uriage"); #カレントディレクトリ指定(IISの場合)
use lib 'C:/Inetpub/wwwroot/uriage'; #GD::Graphライブラリ格納フォルダ GD (固定)の場所
#
use GD::Graph::mixed;
require 'save.pl';
print STDERR "Processing sample62\n";
@data = (
["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"],
[ 9, 8, 9, 8.4, 7.1, 7.5, 8, 3, 3],
[ .4, .3, 1, 1, .3, 1.5, 2, 1, 0],
);
$my_graph = new GD::Graph::mixed();
$my_graph->set(
x_label => 'X Label',
y1_label => 'Y1 label',
y2_label => 'Y2 label',
title => 'A Mixed Type Graph with Two Axes',
two_axes => 1,
y1_max_value => 10,
y2_max_value => 2.5,
y_min_value => 0,
y_tick_number => 5,
long_ticks => 1,
x_ticks => 0,
legend_marker_width => 24,
line_width => 5,
bar_spacing => 4,
types => [ qw( bars lines ) ],
transparent => 0,
);
$my_graph->set_legend( qw( one two three four five six ) );
$my_graph->plot(\@data);
save_chart($my_graph, 'sample62');
(参考)
●本ソースコードの1〜3行目(挿入)
1 chdir("C:\Inetpub\wwwroot\uriage"); #カレントディレクトリ指定(IISの場合)
2 use lib 'C:/Inetpub/wwwroot/uriage'; #GD::Graphライブラリ格納フォルダ GD (固定)の場所
3 #
Windows IIS 走行用に元ソースに挿入
●>save.pl(グラフ画像保存ルーチン)
|