Javascript Google visualization gauge:无法读取属性';arrayToDataTable';未定义的

Javascript Google visualization gauge:无法读取属性';arrayToDataTable';未定义的,javascript,charts,visualization,gauge,Javascript,Charts,Visualization,Gauge,我正在研究JS,特别是google visualization gauge。我尝试将此图表集成到脚本中 但我有一个错误: Uncaught TypeError: Cannot read property 'arrayToDataTable' of undefined at drawChart (main.js:59) at main (main.js:10) at main.js:4 这是我的代码: google.charts.load('current', {

我正在研究JS,特别是google visualization gauge。我尝试将此图表集成到脚本中

但我有一个错误:

Uncaught TypeError: Cannot read property 'arrayToDataTable' of undefined
    at drawChart (main.js:59)
    at main (main.js:10)
    at main.js:4
这是我的代码:

    google.charts.load('current', {'packages':['gauge']});
    google.charts.setOnLoadCallback(drawChart);

    main();

    function main(){
        var valueGauge=requestHttp("https://raptorjesus.000webhostapp.com/lecture.php");
        drawChart(valueGauge);
        editElementHTML("valeurExacte","La quantité de CO2 est de : ",valueGauge," ppm.");

        [...]

        setTimeout(main, 1000); //On dit à JS que la fonction main a une durée de vie de 1 seconde
    }

    function requestHttp(url){

[...]

    }

    function drawChart(valueGauge) {


       var data = google.visualization.arrayToDataTable([
            ['Label', 'Value'],
            ['CO2', valueGauge] //on remplace la valeur stricte du snippet google par la variable de la requête

        ]);

        var options = {
            width: 350, height: 250,
            redFrom: 5000, redTo: 6000,
            yellowFrom: 1700, yellowTo: 5000,
            greenFrom: 1000, greenTo: 1700,
            minorTicks: 5,
            max: 6000,
        };

        var chart = new google.visualization.Gauge(document.getElementById('chart_div'));

        chart.draw(data, options);
    }

    function editElementHTML(idElem, text1, text2, variable){
        var Element= (document.getElementById(idElem));
        Element.innerHTML = text1+ variable+text2;
    }
错误来自行var
data=google.visualization.arrayToDataTable
,但我不知道为什么,因为我没有看到任何语法错误,它与谷歌图表文档的代码相同


有什么想法吗?

解决了:我不得不用google.charts.setOnLoadCallback(drawChart)代替drawChart()

首先是google.charts.setOnLoadCallback(drawChart)。您在哪里做的更改?我刚刚删除了chartDraw();