2010-11-30 30 views
2

J'ai un cgi-script qui dessine un graphique. Voici le code:Image de fond dans les colonnes du graphique

#!/usr/bin/perl -w 

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

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(500, 300); 
$mygraph->set(
    x_label => 'Month', 
    y_label => 'Number of Hits', 
    title => 'Number of Hits in Each Month in 2002', 
    dclrs => ['cyan'] 
) or warn $mygraph->error; 

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

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

Toutes les colonnes sont de couleur cyan. Alors ...

Avez-vous des idées pour placer une image en colonnes plutôt qu'en couleur?

J'ai cherché sur le web à ce sujet mais rien de semblable que je n'ai pas pu trouver. Je voudrais utiliser uniquement GD.pm sans utiliser de modules supplémentaires tels que ImageMagick.

Répondre

1

Je ne sais pas. Vous pouvez avoir une image d'arrière-plan pour l'ensemble du graphique en spécifiant l'option de logo.

$mygraph->set(
    x_label => 'Month', 
    y_label => 'Number of Hits', 
    title => 'Number of Hits in Each Month in 2002', 
    dclrs => ['cyan'], 
    logo => 'mydog.png', 
) or warn $mygraph->error;

Mais je ne pense pas que vous pouvez mettre une image dans seulement les colonnes.

+0

En tout cas merci pour la réponse. Peut-être que GD ne permet pas de faire de tels trucs. – m4cs