web-dev-qa-db-ja.com

JSONでグーグルチャートを描く

個別のJSONファイルである場合、Googleグラフのデータセットを取得して使用するにはどうすればよいですか? jQuery getJSONを試しましたが、機能しませんでした。GoogleVizはJSONを使用して棒グラフを描画する必要があります。ネイティブのGoogle APIの方法はありますか?または、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);
}
11
neverlate

new google.visualization.DataTable(json)は機能します。

使用する正しい構造については、 dataTable.toJSON() の出力を確認してください。

したがって、正しくフォーマットされたjsonを返すgetjson.phpスクリプトがサーバー上にある場合は、次のようにすることができます。

$.getJSON('/getjson.php', function(json) {
    var dataTable = new google.visualization.DataTable(json);
});
17
Arnaud Le Blanc