Foros del Web » Programando para Internet » PHP »

Graficos de estadistidas con php y MySQL

Estas en el tema de Graficos de estadistidas con php y MySQL en el foro de PHP en Foros del Web. Hola amigos, tengo el siguiente codigo que trabaja muy bien y es para presentar los resultados del mes de una base de datos MySQL Código ...
  #1 (permalink)  
Antiguo 08/04/2009, 08:19
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 9 meses
Puntos: 3
Graficos de estadistidas con php y MySQL

Hola amigos, tengo el siguiente codigo que trabaja muy bien y es para presentar los resultados del mes de una base de datos MySQL
Código PHP:
<?php
for ($i=0$i<12$i++){
        
$j 0;
        
$x $i+1;
        if (
$i<9){
            
$fec1 date("Y-0$x-01 00:00:00");
            
$fec2 date("Y-0$x-31 00:00:00");
            
$result mysql_query("SELECT * FROM direc_http WHERE fecha BETWEEN '$fec1' AND '$fec2' Order by 'fecha' DESC") or die ("no se conecto");
            while(
mysql_fetch_row($result)){
                
$j++;
            }
            
$a[$i] = $j;
        }else{
            
$fec1 date("Y-$x-01 00:00:00");
            
$fec2 date("Y-$x-31 00:00:00");
            
$result mysql_query("SELECT * FROM direc_http WHERE fecha BETWEEN '$fec1' AND '$fec2' Order by 'fecha' DESC") or die ("no se conecto");
            while(
mysql_fetch_row($result)){
                
$j++;
            }
            
$a[$i] = $j;
        }
}
$datosTabla = array(
        array( 
"Enero"$a[0], "#BDDA4C"),
        array( 
"Febrero"$a[1], "#FF9A68"),
        array( 
"Marzo"$a[2], "#69ABBF"),
        array( 
"Abril"$a[3], "#FFDE68"),
        array( 
"Mayo"$a[4], "#AB6487"),
        array( 
"Junio"$a[5], "#BDDA4C"),
        array( 
"Julio"$a[6], "#FF9A68"),
        array( 
"Agosto"$a[7], "#69ABBF"),
        array( 
"Septiembre"$a[8], "#FFDE68"),
        array( 
"Octubre"$a[9], "#AB6487"),
        array( 
"Noviembre"$a[10], "#BDDA4C"),
        array( 
"Diciembre"$a[11], "#FF9A68")
);
$maximo 0;
foreach ( 
$datosTabla as $ElemArray ) { $maximo += $ElemArray[1]; }
?>
<body>
<table width="400" cellspacing="0" cellpadding="2">
<?php 
foreach( $datosTabla as $ElemArray ) {
$porcentaje round((( $ElemArray[1] / $maximo ) * 100),2); //porcentaje
?>
<tr>
    <td width="20%"><strong><?php echo( $ElemArray[0] ) ?></strong></td>
    <td width="10%"><?php echo( $porcentaje ?></td>
    <td>
        <table width="<?php echo (($porcentaje)/2?>%" bgcolor="<?php echo($ElemArray[2]) ?>">
        <tr><td> </td></tr>
    </table>
    </td>
</tr>
<?php 
}
?>
pero los graficos se muestran horizontales, como podria hacer para que los grafiscos se muestren verticales usando casi el mismo codigo (o como podria girar la pagina a la derecha para que muestre las graficas verticales, jeje); no deceo usar librerias como jpgraph u otras, de antemano muchas gracias
  #2 (permalink)  
Antiguo 08/04/2009, 11:15
 
Fecha de Ingreso: junio-2008
Mensajes: 31
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Graficos de estadistidas con php y MySQL

Podes probar con algo como esto:

Código PHP:

$datosTabla 
= array(
        array( 
"Enero"$a[0], "#BDDA4C"),
        array( 
"Febrero"$a[1], "#FF9A68"),
        array( 
"Marzo"$a[2], "#69ABBF"),
        array( 
"Abril"$a[3], "#FFDE68"),
        array( 
"Mayo"$a[4], "#AB6487"),
        array( 
"Junio"$a[5], "#BDDA4C"),
        array( 
"Julio"$a[6], "#FF9A68"),
        array( 
"Agosto"$a[7], "#69ABBF"),
        array( 
"Septiembre"$a[8], "#FFDE68"),
        array( 
"Octubre"$a[9], "#AB6487"),
        array( 
"Noviembre"$a[10], "#BDDA4C"),
        array( 
"Diciembre"$a[11], "#FF9A68")
);
$maximo 0;
foreach ( 
$datosTabla as $ElemArray ) { $maximo += $ElemArray[1]; }

$i=0;
$var .= "\n<div style='height:200px;border:1px solid green;width:700px;' >";
foreach( 
$datosTabla as $ElemArray )
{
    
$porcentaje round( ( ( $ElemArray[1] / $maximo ) * 100) ); //porcentaje
    
$var .= "\n\t<div style='width:20px;float:left;border:1px solid;margin:0;padding:0;'>";
    
$var .= "\n\t\t<div style='width:20px;height:".(100-$porcentaje)."px;float:left;margin:0;padding:0;'></div>";
    
$var .= "\n\t\t<div style='width:20px;height:".$porcentaje."px;float:left;background:"$ElemArray[2].";margin:0;padding:0;'></div>";
    
$var .= "\n\t</div>";
    
$i++;
}
$var .= "\n\n</div>";
echo 
$var
no lo probe en ie, en firefox funciona. Vas a tener ajustarlo a como lo necesites, si $porcentaje supera el maximo ocurre un error.
  #3 (permalink)  
Antiguo 08/04/2009, 19:28
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Graficos de estadistidas con php y MySQL

Gracias neogabo, funcina bien esa grafica, pero tengo una pregunta, como hago para poner la cantida y el mes en la parte inferior?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 12:59.