La perspectiva de crear gráficos mediante JavaScript es excitante, y también es el uso ideal para este lenguaje de programación.
En este artÃculo les mostramos una mezcla de PHP, HTML, JavaScript MooTools y MilkChart que se conectará con Google Analytics y dará como resultado... ¡Un gráfico con nuestras estadÃsticas!
El PHP
-
/* defaults */
-
$type = 'Column';
-
-
/* submission? */
-
if($_GET['month'] || $_GET['year']):
-
/* cleanse lookups */
-
$month = (int) $_GET['month']; if(!$month) { $month = 1; }
-
/* retrieve information from google analytics */
-
require 'ga/analytics.class.php';
-
$analytics = new analytics('youraccount@gmail.com', 'yourP@ss');
-
$analytics->setProfileByName('yourdomain.com');
-
$analytics->setMonth($month,$year);
-
$visits = $analytics->getVisitors();
-
$views = $analytics->getPageviews();
-
/* build tables */
-
//visits - php
-
$visits_table_data = '<table id="data-table-visits">';
-
/* $visits_table_data.= '<thead><tr><th>Unique Visits</th><th>PageViews</th></tr></head><tbody>'; */
-
$visits_table_data.= '<thead><tr><th>Unique Visits</th></tr></head><tbody>';
-
foreach($visits as $day=>$visit) {
-
/*
-
$visits_table_data.= '<tr><td>'.$visit.'</td><td>'.$views[$day].'</td></tr>'."\n";
-
$visits_table_foot.= '<td>'.$day.'</td><td>'.$day.'</td>'."\n";
-
*/
-
$visits_table_data.= '<tr><td>'.$visit.'</td></tr>'."\n";
-
$visits_table_foot.= '<td>'.$day.'</td>'."\n";
-
}
-
$visits_table_data.= '</tbody>';
-
$visits_table_data.= '<tfoot><tr>'.$visits_table_foot.'</tr></tfoot>';
-
$visits_table_data.= '</table>';
-
}
-
endif;
Todo comienza mediante la obtención de la información de Google Analytics. Simplemente proporciona el marco de tiempo que deseas para las estadÃsticas. Por lo general se opta por recuperar la estadÃstica del mes.
El HTML generado y el JavaScript de MooTools
-
<h2>Select Your Month/Year</h2>
-
<form method="get">
-
<select name="month" id="month">
-
<option value="">-- Select Month --</option>
-
<?php
-
for($x = 1; $x <= 12; $x++):
-
echo '<option value="',$x,'"',($month == $x ? ' selected="selected"' : ''),'>',date('F',mktime(0,0,0,$x,1,2009)),'</option>';
-
endfor;
-
?>
-
</select>
-
<select name="year" id="year">
-
<option value="">-- Select Year --</option>
-
<?php
-
for($x = 2008; $x <= date('Y'); $x++):
-
echo '<option value="',$x,'"',($year == $x ? ' selected="selected"' : ''),'>',$x,'</option>';
-
endfor;
-
?>
-
</select>
-
<select name="type" id="type">
-
<option value="">-- Select Chart Type --</option>
-
<?php
-
$chart_types = array('Column','Bar','Line','Scatter','Pie');
-
foreach($chart_types as $chart_type):
-
echo '<option value="',$chart_type,'"',($type == $chart_type ? ' selected="selected"' : ''),'>',$chart_type,'</option>';
-
endforeach;
-
?>
-
</select>
-
<input type="submit" name="submit" id="submit" value="Get Statistics!" />
-
</form>
-
-
<?php
-
//php time - echo tables
-
if($visits_table_data) { echo '<h3>Visits</h3>', $visits_table_data,'<br />'; }
-
?>
-
<?php if(count($visits)): ?>
-
<script type="text/javascript">
-
var visits = new MilkChart.<?php echo $_GET['type']; ?>('data-table-visits',{
-
width: 960,
-
height: 550,
-
font: 'tahoma',
-
showValues: false,
-
useFooter: true
-
});
-
</script>
-
<?php endif; ?>
Utilizando los elementos THEAD, TBODY, y TFOOT es extremadamente importante para asegurar que las etiquetas correctas son colocadas dentro del gráfico generado. La tabla de información en sà es bastante simple. MilkChart tomará la tabla de arriba y creará un elemento CANVAS que contendrá el gráfico.
Existen 5 tipos de gráficos diferentes entre los que pueden elegir: Columnas, Barras, Pastel, LÃneas, Scatter. MilkChart aprovecha al máximo el modelo de herencia de MooTools' dado que cada tipo de clase de gráfico extiende la clase base de MilkChart.
Haz clic aquà para ver la Demo »
Fuente: David Walsh Blog
Artículos relacionados
- Se lanzó la versión 1.3 de Mootols: ¿Qué hay de nuevo?
- WigFlip, crea imágenes de textos con bonitos y originales efectos
- Moousture: LibrerÃa de movimientos gestuales del mouse (basada en Mootools)
- Mootols: Ventanas al estilo Facebook en tu sitio web con LightFace
- Cómo crear un slider de fotos 3D con CSS3









Comentarios recientes
- Gabriela: JAJAJAJAJA, solo faltó: "me parece que el diseño está muy estático, ...
- Alejandro: Todos patalean por que no se quieren tomar la SOPA o porque no podremos ...
- LaU: No termina de convencerme del todo, aunque ya me estoy hartando de lo le...
- Isma-Chistes: Buenas y gracias por la aportación, pero alguien sabrÃa como utilizar ...
- Mauricio Vinasco: GRACIAS!!!! genial... Cómo se te ocurre esto????...
- Jose Larez: Felicitaciones esta muy exacta la explicacion ! Gracias por este curso.....
Feed de los comentarios