# --- create new object $my_graph
my $my_graph = GD::Graph::bars->new(500, 400);
# --- set options of $my_graph
$my_graph->set(
x_label => 'X Label',
y_label => 'Y label',
title => 'Some simple graph',
y_max_value => 8,
y_tick_number => 8,
y_label_skip => 2
) or die $my_graph->error;
# --- build picture in $image
my $image = $my_graph->plot(\@thisDatas) or die $my_graph->error;
# --- save picture in png format
open(IMG, '>image.png') or die $!;
binmode IMG;
print IMG $image->png;
close IMG;
-------------------------------------------------------------------
la quasi totalité est tirée des exemples de GD::Graph. mais j'ai cette
erreur :
...Line 26: Global symbol "@thisDatas" requires explicit package name
et la ligne 26 :
my $image = $my_graph->plot(\@thisDatas) or die $my_graph->error;
on passe la référence du tableau '@thisDatas' à la méthode 'plot' de
l'objet 'my_graph'. pourquoi arrivé là, perl ne connait plus 'thisDatqs'
je comprends vraiment plus. les exemples trouvés ici et la sur le web
utilisent tous la même chose. dois-je changer de lunettes ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jl_morel
Dans l'article , a dit...
bonjour, bon là je comprends plus. voilà le script qui me pose problème :
------------------------------------------------------------------- #!/usr/bin/perl -w use strict; use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
-- J-L.M. http://www.bribes.org/perl
Dans l'article <kurtzlepirate-B61B3F.16525630042006@nnrp7-2.proxad.net>,
kurtzlepirate@yahoo.fr a dit...
bonjour,
bon là je comprends plus. voilà le script qui me pose problème :
-------------------------------------------------------------------
#!/usr/bin/perl -w
use strict;
use GD::Graph::bars <-- il manque un point-virgule là !
bonjour, bon là je comprends plus. voilà le script qui me pose problème :
------------------------------------------------------------------- #!/usr/bin/perl -w use strict; use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
-- J-L.M. http://www.bribes.org/perl
kurtz le pirate
In article <4454de1f$0$12437$, (Jean-Louis MOREL) wrote:
------------------------------------------------------------------- #!/usr/bin/perl -w use strict; use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
arggg !!! oui, il faut que je change de lunette :)
... mais pourquoi perl ne le voit pas avant ?
merci !
-- klp
In article <4454de1f$0$12437$626a54ce@news.free.fr>,
jl_morel@bribes.org (Jean-Louis MOREL) wrote:
-------------------------------------------------------------------
#!/usr/bin/perl -w
use strict;
use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
arggg !!! oui, il faut que je change de lunette :)
In article <4454de1f$0$12437$, (Jean-Louis MOREL) wrote:
------------------------------------------------------------------- #!/usr/bin/perl -w use strict; use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
arggg !!! oui, il faut que je change de lunette :)
... mais pourquoi perl ne le voit pas avant ?
merci !
-- klp
jl_morel
Dans l'article , a dit...
In article <4454de1f$0$12437$, (Jean-Louis MOREL) wrote:
------------------------------------------------------------------- #!/usr/bin/perl -w use strict; use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
arggg !!! oui, il faut que je change de lunette :)
... mais pourquoi perl ne le voit pas avant ?
C'est que, sans le point virgule, l'instruction est encore valide. Manque de chance !
La fonction import reçoit bien une liste ( de quatre éléments: le nom du module et 3 références à des tableaux). En fait, comme le module GD::Graph::bars est orienté objet (rien n'est importé) la fonction import n'existe pas et cette liste est ignorée (voir la doc).
Si le module avait eu une fonction import, il y aurait sans doute eu un message d'erreur car les arguments qu'elle aurait reçus ne correspondaient pas à des fonctions à importer.
Noter que le tableau @thisDatas est bien initialisé, mais comme il est déclaré avec my, sa portée est limitée au bloc BEGIN; d'où l'erreur qui apparaît à la ligne 26.
HTH
-- J-L.M. http://www.bribes.org/perl
Dans l'article <kurtzlepirate-5C9E51.11231301052006@nnrp9-1.proxad.net>,
kurtzlepirate@yahoo.fr a dit...
In article <4454de1f$0$12437$626a54ce@news.free.fr>,
jl_morel@bribes.org (Jean-Louis MOREL) wrote:
-------------------------------------------------------------------
#!/usr/bin/perl -w
use strict;
use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
arggg !!! oui, il faut que je change de lunette :)
... mais pourquoi perl ne le voit pas avant ?
C'est que, sans le point virgule, l'instruction est encore valide. Manque
de chance !
La fonction import reçoit bien une liste ( de quatre éléments: le nom du
module et 3 références à des tableaux). En fait, comme le module
GD::Graph::bars est orienté objet (rien n'est importé) la fonction import
n'existe pas et cette liste est ignorée (voir la doc).
Si le module avait eu une fonction import, il y aurait sans doute eu un
message d'erreur car les arguments qu'elle aurait reçus ne correspondaient
pas à des fonctions à importer.
Noter que le tableau @thisDatas est bien initialisé, mais comme il est
déclaré avec my, sa portée est limitée au bloc BEGIN; d'où l'erreur qui
apparaît à la ligne 26.
In article <4454de1f$0$12437$, (Jean-Louis MOREL) wrote:
------------------------------------------------------------------- #!/usr/bin/perl -w use strict; use GD::Graph::bars <-- il manque un point-virgule là !
C'est tout.
arggg !!! oui, il faut que je change de lunette :)
... mais pourquoi perl ne le voit pas avant ?
C'est que, sans le point virgule, l'instruction est encore valide. Manque de chance !
La fonction import reçoit bien une liste ( de quatre éléments: le nom du module et 3 références à des tableaux). En fait, comme le module GD::Graph::bars est orienté objet (rien n'est importé) la fonction import n'existe pas et cette liste est ignorée (voir la doc).
Si le module avait eu une fonction import, il y aurait sans doute eu un message d'erreur car les arguments qu'elle aurait reçus ne correspondaient pas à des fonctions à importer.
Noter que le tableau @thisDatas est bien initialisé, mais comme il est déclaré avec my, sa portée est limitée au bloc BEGIN; d'où l'erreur qui apparaît à la ligne 26.
HTH
-- J-L.M. http://www.bribes.org/perl
kurtz le pirate
In article <445629b6$0$12443$, (Jean-Louis MOREL) wrote:
C'est que, sans le point virgule, l'instruction est encore valide. Manque de chance ! ...
ben j'ai pas tout compris. merci :)
-- klp
In article <445629b6$0$12443$626a54ce@news.free.fr>,
jl_morel@bribes.org (Jean-Louis MOREL) wrote:
C'est que, sans le point virgule, l'instruction est encore valide. Manque
de chance !
...