Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/06/2008, 08:53
layker
 
Fecha de Ingreso: noviembre-2007
Mensajes: 264
Antigedad: 16 aos, 5 meses
Puntos: 0
problema para crear estadisticas con bi. gd

Hola tengo el siguiente codigo. quiero ke me haga una grafica con los votos, pero al ejecutar el codigo me sale algo asi como lo que he puesto mas abajo... alguien sabe porque me pasa eso?? un saludo gracias

Cdigo PHP:
    require ("conexion.php");
    
$query "SELECT * FROM tabla WHERE user='$_SESSION[user]' ";
    
$con mysql_query($query);
    
$datos mysql_fetch_array($con);
    
    
$valores = array(
    
'1PTO' => $datos["voto1"],
    
'2PTS' => $datos["voto2"],
    
'3PTS' => $datos["voto3"],
    
'4PTS' => $datos["voto4"],
    
'5PTS' => $datos["voto5"],
    
'6PTS' => $datos["voto6"],
    
'7PTS' => $datos["voto7"],
    
'8PTS' => $datos["voto8"],
    
'9PTS' => $datos["voto9"],
    
'10PTS' => $datos["voto10"]
    );


    
// Definimos las dimensiones de la grafica
    
$im_w 420// Ancho de la imagen
    
$im_h 200// Alto de la imagen
    
$im_margen 50// Margen lateral
    
$origen $im_h-35// Origen de las barras

    // Creamos la imagen
    
$imagen imagecreate($im_w,$im_h);
    
// Definimos los colores
    
$bg imagecolorallocate($imagen,245,245,245);
    
$negro imagecolorallocate($imagen,0,0,0);
    
$rojo imagecolorallocate($imagen,255,0,0);
    
$sombra imagecolorallocate($imagen,195,195,195);
    
$gris imagecolorallocate($imagen,150,150,150);


    
// Obtenemos la cantidad de valores
    
$cant count($valores);
    
// Distancia entre las barras
    
$dist = ($im_w - ($im_margen*2))/$cant;
    
// Mximo y Mnimo de los valores
    
$max max($valores);
    
$min min($valores);
    
// Obtenemos la escala segn el valor mximo
    // y el espacio vertical de la imagen desde
    // el origen dejando un margen superior de 10px
    
$escala = ($origen 10)/$max;
    
        
// Definimos la fuente
    
$f 3;
    
// Obtenemos el ancho y alto de la fuente
    
$f_w imagefontwidth($f);
    
$f_h imagefontheight($f);
    
    
// Definimos el ancho de las barras
    
imagesetthickness($imagen,16);
    
    
// Por cada valor, dibujamos una barra
    
$barra 0;
    foreach(
$valores as $mes => $valor) {
    
// Obtenemos las coordenadas de la barra
    
$x intval($im_margen+($dist/2)+
    (
$dist*$barra));
    
$y intval($origen-($valor*$escala));
    
// Dibujamos la sombra de la barra
    
imageline($imagen,$x-6,$y+6,$x-6,
    
$origen,$sombra);
    
// Dibujamos la barra
    
imageline($imagen,$x,$y,$x,$origen,$rojo);
    
// Escribimos el mes
    
imagestringup($imagen,$f,$x-($f_h/2),
    
$origen+5+(strlen($mes)*$f_w),$mes,$negro);
    
// Escribimos el valor
    
imagestringup($imagen,$f,$x-($f_h/2),
    
$origen-5,$valor,$bg);

    
$barra++;
    }
    
    
imagesetthickness($imagen,1);

    
imageline($imagen,10,$origen,$im_w-10,$origen,
    
$negro);
    
    
imagegif($imagen);
    
imagedestroy($imagen); 
Cita:
GIF87a��������Ö���������,������ 0I8ͻ`(dihlp,tmx| pH,Ȥrl:ШtJ*Zجvzx 贀nMM-r}}dj[iLhCf: 0k' ċ˶ɅЯզyژzߍ݀|um sb]* p +*pY:ĉ}*O4v &# 1嘖}`#sO͙B~$N27Ig1| 3NӥU QeHG*\}yYخee]fs.S;ɶz*إ]`,$>dqοJSq\p;Q-(ɚq3[Pơ(dϫOqvOZ#;n{>miI~ &|̯6w \Gn{,{$~]@OQ{x/ZD??yy`_5Px~b%` 6LH݀Q8oX~e"'@F.,_g Ѹ# 6 dC&2ማ!I<3;sZ?@wEw4 tMc|1L-ʹX? u