2017-12-28 6 views
1

질문이 하나 있습니다. Google 차트는 그려지지 않습니다.Google 차트가 그려지지 않습니다

여기 여기 내 콘솔 로그 모르겠어요 log

내 코드

<script> 
     google.load("visualization", "1", {packages:["corechart"]}); 
     google.setOnLoadCallback(drawChart); 
     function drawChart() { 
    var jsonData = $.ajax({ 
      url: "/temhum", 
      dataType:"json", 
     }).done(function (jsonData) { 
    var data = new google.visualization.DataTable(); 

    console.log(jsonData); 
    data.addColumn('string', 'date'); 
    data.addColumn('number', 'temperature'); 
    data.addColumn('number', 'humidity'); 

    jsonData.forEach(function (row) { 
    data.addRow([ 
     row.date, 
     row.temperature, 
     row.humidity 
    ]); 
    }); 

    var chart = new google.visualization.LineChart(document.getElementById('chartDiv')); 
    chart.draw(data, { 
    width: 600, 
    height: 600 
    }); 
}).fail(function (jq, text, err) { 
    console.log(text + ' - ' + err); 
}); 

    } 

</script> 

입니다. 왜 차트를 그려야하지? 누구든지 node.js, google chart 및 mysql을 사용하여 실시간으로 데이터를 표현하는 방법을 알고 있습니까? json으로의

+1

을 sungyong를 해결했다. 주문을'google.setOnLoadCallback (drawChart);로 변경하십시오. function drawChart() {...} =>'drawChart() 함수를 호출합니다. {...}; google.setOnLoadCallback (drawChart); – sungyong

+0

같은 일이 발생합니다. –

답변

0

값이 ... 열 유형 당신이 올바른 유형으로 각각 변환를 사용할 수 있습니다
세 JSON 열이 문자열로 건너

을 일치해야

data.addRow([ 
    new Date(row.date), 
    parseFloat(row.temperature), 
    parseFloat(row.humidity) 
]); 
0

당신을 생각해보십시오. 나는

해결 방법이 문제 ..

당신은`drawChart()`선언하기 전에 사용할 수 있습니다 & 화이트 햇 코드 믹스

<script type="text/javascript" src="https://www.google.com/jsapi"></script> 
    <script> 
     google.load("visualization", "1", { 
     packages: ["corechart"] 
     }); 
     google.setOnLoadCallback(drawChart); 

     function drawChart() { 
     var jsonData = $.ajax({ 
      url: "/temhum", 
      dataType: "json", 
     }).done(function(jsonData) { 
      var data = new google.visualization.DataTable(jsonData); 
      console.log(jsonData); 
      data.addColumn('datetime', 'date'); 
      data.addColumn('number', 'temperature'); 
      data.addColumn('number', 'humidity'); 
      console.log(data); 
      jsonData.forEach(function(row) { 
       data.addRow([ 
        new Date(row.date), 
        parseFloat(row.temperature), 
        parseFloat(row.humidity) 
       ]); 
      }); 
      var chart = new google.visualization.LineChart(document.getElementById('chartDiv')); 
      chart.draw(data, { 
       width: 600, 
       height: 600 
      }); 
     }).fail(function(jq, text, err) { 
      console.log(text + ' - ' + err); 
     }); 
     } 
    </script> 
관련 문제