Foros del Web » Programando para Internet » Javascript »

Uso correcto API Google Chart

Estas en el tema de Uso correcto API Google Chart en el foro de Javascript en Foros del Web. Tengo la situación del uso correcto de google.load(); dentro de mi proyecto. Los datos de la gráfica los obtengo de la bd, y como son ...
  #1 (permalink)  
Antiguo 21/11/2014, 11:37
Avatar de JavierMMM  
Fecha de Ingreso: agosto-2008
Ubicación: Justito frente a la computadora.
Mensajes: 275
Antigüedad: 10 años, 10 meses
Puntos: 0
Exclamación Uso correcto API Google Chart

Tengo la situación del uso correcto de google.load(); dentro de mi proyecto.

Los datos de la gráfica los obtengo de la bd, y como son varias gráficas las que desep hacer, hago una lista de opciones y mando los datos por poss de jquery, de la siguiente manera:

Código Javascript:
Ver original
  1. $('#gXu').on("click", function(event){
  2.                 $('#opciones').hide();
  3.                 $('#1').show();
  4.                 $('#resultc').show();
  5.                 $('#return').show();
  6.  
  7.                 var axin = 11;
  8.                 $.post("estadisticas_control.php",{axn: axin, id_curso: <?php echo $id_curso; ?>, id_usuario: <?php echo $id_usuario; ?>, id_apartado: <?php echo $id_apartado; ?>}).done(function(data){
  9.                     $("#resultc").empty().append(data);
  10.                 });
  11.             });

La cuestión es, que cuando muestro la gráfica, la opción

Código Javascript:
Ver original
  1. google.load("visualization", "1", {packages:["barchart"]});

intenta abrir una nueva página y nunca visualizo nada. No se si es porque mando llamar a un archivo adicional (estadisticas_control.php), porque en el ejemplo que hice no tuve problema alguno.

El ejmplo que me funciona correctamente es el siguiente:
Código PHP:
 <?php
    
require_once($_SERVER['DOCUMENT_ROOT']."/assets/header.php");
    require_once(
$_SERVER['DOCUMENT_ROOT']."/config.php");
    require_once(
$_SERVER['DOCUMENT_ROOT']."/lib/estadistica_class.php");
      
$a = new estadistica($sqli);
      
      
$id_curso 2;
      
$id_apartado 2;
      
$a->id_curso $id_curso;
      
$a->id_apartado $id_apartado;

    
?>    
    <meta name="tipo_contenido"  content="text/html;" http-equiv="content-type" charset="utf-8">
    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <script type="text/javascript">

        var arrayJS=<?php echo $a->get_estadist_JS(); ?>;
        var grafica = new Array();
        var toPush1 = new Array();

        if(!arrayJS){
          newTable = '<td><p>No hay datos disponibles</p></td>'; 
        }else{

            toPush1.push("Usuario","Participaciones");
            grafica.push(toPush1);

            $.each(arrayJS, function(key, value){ 
               tp = new Array();
               tp.push(value["usuario"],parseInt(value["cuantos"]));

              grafica.push(tp);
            });
        } 

        google.load("visualization", "1", {packages:["barchart"]});
        google.setOnLoadCallback(drawChart);


      function drawChart() {
        var data = google.visualization.arrayToDataTable( grafica );

        var options = {
          title: 'XxXxXxXx',
          vAxis: {title: 'Alumno',  titleTextStyle: {color: 'red'}}
        };

        var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
        chart.draw(data, {width: 1000, height: 740, is3D: true}, options);
      }
    </script>
  <body>
    <div class="col-sm-9 col-md-10 main">
        <div class="col-md-12">  
          <br />
          <div id="chart_div" ></div>
        </div>
    </div>
  </body>
¿Qué estaré haciendo mal?
__________________
__________________________________________________ ___________________________________
Las cosas más reales sólo suceden en la imaginación... Sólo recordamos, lo que nunca sucedió.

Etiquetas: api, chart, correcto, funcion, google, html, jquery, js, php
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:07.