рисовать диаграммы Google с помощью JSON

Как я могу получить и использовать набор данных для диаграмм Google, если это был отдельный файл JSON? Я попробовал jQuery getJSON, но не смог заставить его работать. Google Viz должен использовать JSON для рисования гистограммы. Есть ли собственный способ API Google? или я могу найти способ с помощью jQuery и как? Спасибо

      // Load the Visualization API and the piechart package.
  google.load('visualization', '1.0', {'packages':['corechart']});

  // Set a callback to run when the Google Visualization API is loaded.
  google.setOnLoadCallback(drawChart);

  // Callback that creates and populates a data table, 
  // instantiates the pie chart, passes in the data and
  // draws it.
  function drawChart() {

      // Create the data table.
      var data = new google.visualization.DataTable();
      data.addColumn('string', 'Products');
      data.addColumn('number', 'Automated');
      data.addRows([
        ['Product 1', 85],
        ['Product 2', 75],
        ['Product 3', 90], 
        ['Product 4', 40],
        ['Product 5', 40]
      ]);

      // Set chart options
      var pie_options = {'title':'How Much Automated our Products are?',
                     'width':520,'height':300
                    };
      var bar_options ={'width': 620, 'height': 300, 
                        'title': 'Products',
                        'hAxis': {'title': '% Automated', 'titleTextStyle': {'color': 'red', 'fontSize': 16}}
                      }
      // Instantiate and draw our chart, passing in some options.
      var chart = new google.visualization.PieChart(document.getElementById('piechart_div'));
      chart.draw(data, pie_options);

     var chart = new google.visualization.ColumnChart(document.getElementById('barchart_div'));
     chart.draw(data, bar_options);
}

person neverlate    schedule 15.08.2011    source источник
comment
Не могли бы вы опубликовать свой код как можно чаще, чтобы мы могли эффективно вам помочь?   -  person Tae-Sung Shin    schedule 15.08.2011


Ответы (1)


new google.visualization.DataTable(json) работает.

Посмотрите выходные данные dataTable.toJSON(), чтобы определить правильную структуру.

Итак, если на вашем сервере есть скрипт getjson.php, который возвращает правильно отформатированный json, вы можете сделать это:

$.getJSON('/getjson.php', function(json) {
    var dataTable = new google.visualization.DataTable(json);
});
person Arnaud Le Blanc    schedule 15.08.2011
comment
Спасибо, у меня еще нет php-скрипта, но я могу попробовать вызвать действительный файл json. - person neverlate; 15.08.2011