【问题标题】:PERL graph query (GD::Graph)PERL 图查询 (GD::Graph)
【发布时间】:2014-10-24 06:15:53
【问题描述】:

我正在使用我在网上找到的一个示例并对其进行编辑以查看 GD::Graph 模块提供的不同选项。这是我目前使用的代码。

#!/usr/local/bin/perl -w
# Change above line to point to your perl binary

use CGI ':standard';
use GD::Graph::bars;
use strict;

# Both the arrays should same number of entries.
my @data = (["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug",
             "Sep", "Oct", "Nov", "Dec"],
            [23, 5, 2, 20, 11, 33, 7, 31, 77, 18, 65, 52]);

my $mygraph = GD::Graph::bars->new(1000, 1000);
$mygraph->set(
    x_label     => 'Month',
    y_label     => 'Number of Hits',
    title       => 'Number of Hits in Each Month in 2002',
    bgclr   => 'black',
) or warn $mygraph->error;

my $myimage = $mygraph->plot(\@data) or die $mygraph->error;

print "Content-type: image/png\n\n";
#print $myimage->png;

open IMG, '>file.png';
print IMG $myimage->png;
close IMG;

可以看出,我正在尝试将背景颜色设置为黑色,但无论我设置什么,背景都保持不变。

通用背景是什么,我做错了什么。请指教。谢谢

【问题讨论】:

    标签: perl graph gd


    【解决方案1】:

    我必须明确设置transparent => 0 才能让它工作。你会认为bgclr 会覆盖它。

    这个答案感觉不正确,因为它更像是一种解决方法,而不是你做错的任何事情。

    通过一些代码清理来修复此问题:

    #!/usr/bin/env perl
    use strict;
    use warnings;
    use autodie;
    
    use CGI ':standard';
    use GD::Graph::bars;
    
    # Both the arrays should same number of entries.
    my @data = (
        [qw( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec )],
        [qw( 23  5   2   20  11  33  7   31  77  18  65  52  )],
    );
    
    my $mygraph = GD::Graph::bars->new( 1000, 1000 );
    $mygraph->set(
        x_label     => 'Month',
        y_label     => 'Number of Hits',
        title       => 'Number of Hits in Each Month in 2002',
        bgclr       => 'black',
        transparent => 0,
    ) or warn $mygraph->error;
    
    my $myimage = $mygraph->plot( \@data ) or die $mygraph->error;
    
    print "Content-type: image/png\n\n";
    print $myimage->png;
    
    __END__
    open my $fh, '>', 'file.png';
    print $fh $myimage->png;
    close $fh;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多