从谷歌图表中的DataView类获取值到javascript数组

Getting value from DataView class in google chart to a javascript array

本文关键字:获取 javascript 数组 DataView 谷歌      更新时间:2023-09-26

我正在尝试将谷歌图表的DataView类中的值获取到javascript数组中,但我似乎无法弄清楚。任何帮助都非常感谢。

数据图像

这是我的代码:

    <html>
    <head>
      <script type="text/javascript" src="https://www.google.com/jsapi"></script>
      <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
      <script type="text/javascript">
      google.load('visualization', '1', {'packages': ['table', 'corechart','controls']});
      google.setOnLoadCallback(initialize);
    function initialize() {
              // The URL of the spreadsheet to source data from.
              var query = new google.visualization.Query(
                'https://docs.google.com/spreadsheets/d/11w3bG72wkWpqAneTRNwQWKzPsMaQgveYCe5OPvbq9CA/edit#gid=0');
              query.setQuery("select A, D");
              query.send(draw);
             }
             function draw(response) {
                if (response.isError()) {
                    alert('Error in query');
                }
                var frequency = response.getDataTable();
                var format1 = new google.visualization.DateFormat({pattern: "Hms"});
                format1.format(frequency, 0);
                var view = new google.visualization.DataView(frequency);
                var table = new google.visualization.Table(document.getElementById('table_div'));
                view.setColumns([0]);
                // to get the values from the view to array arr 
                var i;
                var arr = [];
                for(i in view){
                    arr [i] = view.getValue(i, 0);
                }
                var x;
                for(x in arr){
                    document.write(arr[x]);
                }
             }
            </script>
           </head>
           <body>
            <div id="table_div">
            </div>
           </body>
           </html>

试试这个...

var i;
var arr = [];
for (i = 0; i < view.getNumberOfRows(); i++) {
  arr.push(view.getValue(i, 0));
}