Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/01/2012, 14:29
johhan160
 
Fecha de Ingreso: enero-2012
Mensajes: 16
Antigüedad: 12 años, 4 meses
Puntos: 1
Usar Google Chart con AJAX

Pues hoy me tope con Google Chart buscando una buena api de gráficos, me funciona todo a la perfección, lo único malo es que no puedo echarlo a andar con AJAX, se recarga el pedazo de la pagina, veo con firebug que envía respuesta, pero no muestra el gráfico como tal, si recargo la pagina completa si muestra el grafico sin problemas

codigo del grafico

grafico_poll.php
Código HTML:
Ver original
  1.   <head>
  2.   <?php
  3. include_once('cone.php');
  4. $link=conectarse();
  5.  
  6. $sql = mysql_query("select * from exitpoll",$link) or die(mysql_error());
  7. $array=mysql_fetch_array($sql);
  8.  
  9. $capriles = $array['capriles'];
  10. $diego = $array['diego'];
  11. $maria = $array['maria'];
  12. $medina = $array['medina'];
  13. $pablo = $array['pablo'];
  14.  
  15.  ?>
  16.     <!--Load the AJAX API-->
  17.     <script type="text/javascript" src="https://www.google.com/jsapi"></script>
  18.     <script type="text/javascript">
  19.  
  20.       // Load the Visualization API and the piechart package.
  21.       google.load('visualization', '1.0', {'packages':['corechart']});
  22.  
  23.       // Set a callback to run when the Google Visualization API is loaded.
  24.       google.setOnLoadCallback(drawChart);
  25.  
  26.       // Callback that creates and populates a data table,
  27.       // instantiates the pie chart, passes in the data and
  28.       // draws it.
  29.       function drawChart() {
  30.  
  31.         // Create the data table.
  32.         var data = new google.visualization.DataTable();
  33.         data.addColumn('string', 'Topping');
  34.         data.addColumn('number', 'Slices');
  35.         data.addRows([
  36.           ['Capriles Radonsky', <?php echo $capriles; ?>],
  37.           ['Diego Arria', <?php echo $diego; ?>],
  38.           ['Maria C. Machado', <?php echo $maria; ?>],
  39.           ['Pablo Medina', <?php echo $medina; ?>],
  40.           ['Pablo Perez', <?php echo $pablo; ?>]
  41.         ]);
  42.  
  43.         // Set chart options
  44.         var options = {'title':'Grafico de Exit Poll',
  45.        
  46.         titleTextStyle: {color: '#5c5c5c',fontSize: 25},
  47.                titlePosition: 'out' , legend : 'rigth', pieSliceTextStyle: {color: 'black',fontSize: 18},
  48.                
  49.                colors: ['yellow', '#b2c8b2', 'gray', '#cdded1','blue'],
  50.                        'width':600,
  51.                        'height':300, is3D: true};
  52.  
  53.         // Instantiate and draw our chart, passing in some options.
  54.         var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
  55.         chart.draw(data, options);
  56.       }
  57.     </script>
  58.   </head>
  59.  
  60.   <body>
  61.     <!--Div that will hold the pie chart-->
  62.     <div id="chart_div"></div>
  63.   </body>
  64. </html>

parte del codigo de la pagina donde se muestra


Código HTML:
Ver original
  1. <div id="grafico_poll" align="center">
  2.  
  3.     <div align="center">
  4.     <?php include_once('grafico_poll.php'); ?>
  5.     </div>
  6.  
  7. <!-- otras cosas mas -->
  8.    
  9. </div>



parte del ajax
Código Javascript:
Ver original
  1. divResultado3 = document.getElementById('exitpoll');
  2.         //instanciamos el objetoAjax
  3.         ajax3=objetoAjax();
  4.         ajax3.open("GET", "funciones.php?mesa_centro="+centro+"&exitpoll=si");
  5.         ajax3.onreadystatechange=function() {
  6.            
  7.             if (ajax3.readyState==4) {
  8.                 //mostrar resultados en esta capa
  9.                 divResultado3.innerHTML = ajax3.responseText;
  10.                 divResultado3.style.display="block";
  11.             }
  12.         }
  13.         ajax3.send(null);


espero que alguien sepa algo al respecto