Google visualization ArrayToDataTable不接受日期时间类型

Google visualization ArrayToDataTable不接受日期时间类型,google-visualization,Google Visualization,我这里有此代码用于按日期筛选我的面积图,但它无法正常工作,因为arrayToDataTable不接受dateTime类型 任何帮助都将不胜感激 有人知道怎么解决这个问题吗 这是我的剧本: <script type="text/javascript"> google.load("visualization", "1.1", { packages: ["controls", "corechart"] }); google.setOnLoadCallback

我这里有此代码用于按日期筛选我的面积图,但它无法正常工作,因为
arrayToDataTable
不接受
dateTime
类型

任何帮助都将不胜感激

有人知道怎么解决这个问题吗

这是我的剧本:

        <script type="text/javascript">
    google.load("visualization", "1.1", { packages: ["controls", "corechart"] });
    google.setOnLoadCallback(drawChart);
    function drawChart() {


        $.ajax({
            type: "POST",
            url: "GoogleChart.aspx/GetChartData",
            data: '{}',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (r) {
                var data = google.visualization.arrayToDataTable(r.d);
                var rangeFilter = new google.visualization.ControlWrapper({
                   controlType: 'ChartRangeFilter',
                   containerId: 'filter-range',
                 options: {
                     filterColumnIndex: 0,
                   ui: {
                        chartType: 'AreaChart',
                        chartOptions: {
                          chartArea: {
                         width: '100%',
                        left: 36,
                       right: 18
          },
          height: 72
        }
      }
    }
  });
                var chart = new google.visualization.ChartWrapper({
    chartType: 'AreaChart',
    containerId: 'chart_div',
                    options: {
        width: 1800,
      height: 600,
      legend: {
        alignment: 'end',
        position: 'top'
      },
      animation: {
        duration: 500,
        easing: 'in',
        startup: true
      },
      chartArea: {
        height: '100%',
        width: '100%',
        top: 36,
        left: 36,
        right: 18,
        bottom: 36
      }
    }
  });

                  var dashboard = new google.visualization.Dashboard(document.getElementById('dashboard'));
                 dashboard.bind(rangeFilter, chart);
                  dashboard.draw(data);

            },

        });
    }
</script>

load(“可视化”、“1.1”{packages:[“控件”、“corechart”]});
setOnLoadCallback(drawChart);
函数绘图图(){
$.ajax({
类型:“POST”,
url:“GoogleChart.aspx/GetChartData”,
数据:“{}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(r){
var data=google.visualization.arrayToDataTable(r.d);
var rangeFilter=new google.visualization.ControlWrapper({
controlType:“ChartRangeFilter”,
containerId:“筛选器范围”,
选项:{
filterColumnIndex:0,
用户界面:{
图表类型:“区域图表”,
图表选项:{
图表区:{
宽度:“100%”,
左:36,
右:18
},
身高:72
}
}
}
});
var chart=new google.visualization.ChartWrapper({
图表类型:“区域图表”,
集装箱船:“海图分区”,
选项:{
宽度:1800,
身高:600,
图例:{
对齐:“结束”,
位置:'顶部'
},
动画:{
持续时间:500,
“在”,
启动:正确
},
图表区:{
高度:“100%”,
宽度:“100%”,
排名:36,
左:36,
右:18,
底数:36
}
}
});
var dashboard=new google.visualization.dashboard(document.getElementById('dashboard');
dashboard.bind(范围过滤器、图表);
仪表盘.绘图(数据);
},
});
}

为了创建日期时间值,
您需要手动更改数据中的每一行

而不是使用
arrayToDataTable

var data = google.visualization.arrayToDataTable(r.d);
创建一个空白数据表,
然后使用数据中的列标题创建列,
剩下的要创建行

var data = new google.visualization.DataTable();
r.d.forEach(function (row, index) {
  if (index === 0) {
    data.addColumn('date', row[0]);
    data.addColumn('number', row[1]);
  } else {
    data.addRow([new Date(row[0]), row[1]]);
  }
});

如果需要日期时间,您将无法使用
arrayToDataTable
。相反,您需要使用数据表json构造函数。至于传递日期,您需要使用…所以无法使用arrayToDataTable?唯一的方法是手动将客户端上的每一行更改为一个日期。我不明白,但谢谢您,无论如何我将尝试您的第一条评论:)heeelp meee我无法单独完成:/White非常感谢。。你真的帮了我很多谢谢你