検索条件
全2件
(1/1ページ)
use GD::Graph::points; my $graph = GD::Graph::points->new(400,300); @data = ( ['1st', '2nd', '3rd'], [1, 2, 3], ); my $image = $graph->plot(\@data) or die; my @ret = $graph->get_hotspot(1); for(my $i = 0; $i < @ret; $i++) { print "<area shape=$ret[$i][0] Coords=$ret[$i][1],$ret[$i][4],$ret[$i][2],$ret[$i][3]>\n"; }こんな感じで。第1引数はデータ系列番号(1始まり)、第2引数はデータ系列中のデータ番号(0始まり)。共に省略可。
use GD::Graph::points; my $graph = GD::Graph::points->new(400,300); @data = ( [1 ,1, 10], [1, 2, 3], ); $graph->set( x_min_value => 0, x_max_value => 30, x_tick_number => 10, ); my $image = $graph->plot(\@data) or die; open(OUT, ">test.png") or die; binmode OUT; print OUT $image->png(); close(OUT);setメソッド中の3行はどれをコメントアウトしても表示がおかしくなると思う。
use GD::Graph::points; my $graph = GD::Graph::points->new(400,300); @data = ( ['1st', '2nd', '3rd'], [1, 2, 3], ); my $image = $graph->plot(\@data) or die; my $green = $image->colorAllocate(0, 255, 0); my @p1 = $graph->val_to_pixel(1, 1); my @p2 = $graph->val_to_pixel(3, 3); $image->line(@p1, @p2, $green); open(OUT, ">test.png") or die; binmode OUT; print OUT $image->png(); close(OUT);(1,1)から(3,3)の間に直線を引く。numerical Xにした場合でもちゃんと動くようだ。