• Publicidad

Gráficas de barras

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Gráficas de barras

Notapor Hector Gutierrez » 2011-05-09 17:28 @769

Siguiendo el tutorial de graficación del foro, compiló el programa correctamente y al ejecutarlo obtengo una serie de caracteres ilegibles y no entiendo qué tengo que hacer. El programa es:

#!/usr/bin/perl -w

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

# <img src="http://localhost:8080/Perl Express/sripts/Grafica de barras.cgi" alt="Visitas Mensuales"> ;

# Defino los arreglos y la matriz
my @campos = ('Oct 2003','Nov 2003','Dec 2003','Ene 2004','Feb 2004');
my @valores = ('547','2282','2798','2354','4326');
my @graf = (\@campos, \@valores);

my $grafico = GD::Graph::bars->new(500, 300); # new(ancho,alto)

$grafico->set(
x_label => 'Mes',
y_label => 'Visitas Totales',
title => 'Visitas Mensuales de "Perl en Español"',
) or warn $grafico->error;

my $imagen = $grafico->plot(\@graf) or die $grafico->error;

print "Content-type: image/png\n\n";
print $imagen->png;
exit(1);
Hector Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 37
Registrado: 2011-04-15 14:49 @659

Publicidad

Re: Gráficas de barras

Notapor explorer » 2011-05-09 17:52 @786

Los caracteres ilegibles que ves es el contenido del gráfico generado.

Ese programa es un ejemplo de creación de un gráfico png que es devuelto al navegador del usuario, como respuesta a una petición de este tipo, dentro de una página HTML:

<img src="http://localhost:8080/Perl Express/sripts/Grafica de barras.cgi" alt="Visitas Mensuales">

Es decir: dentro de un HTML, podemos tener una marca <img> que haga una petición a nuestro programa /Perl Express/sripts/Grafica de barras.cgi.

El navegador del usuario, al leer el HTML, verá que ahí, en esa posición, debe ir una imagen. Coge la dirección del href, y la solicita al servidor web. Éste, al ver que es un cgi, lo ejecuta. Al ejecutar el programa, éste devuelve la imagen png al servidor web, y éste lo devuelve al navegador del usuario, mostrando la imagen dentro de la página.

Otra forma de trabajar con este módulo, es grabando el resultado en un fichero local, no como si fuera un CGI, sino un programa normal y corriente. Para eso, solo tienes que abrir en escritura, y en binario, el nombre del fichero a crear, pintar allí el png generado, y ya está.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 27 invitados