Как получить последний ряд Google DataTable в JavaScript? - PullRequest
1 голос
/ 12 мая 2019

У меня есть данные о температуре, влажности и времени, и я могу извлечь все значения из таблицы базы данных для использования в DataTable.Но я также хочу извлечь последний набор значений в DataTable и распечатать его в console.log.

Я попытался напечатать console.log(data), как показано ниже, и вижу все значения

 <script type="text/javascript">
  google.charts.load('current', {'packages':['corechart', 'line']});
  google.charts.setOnLoadCallback(drawLineColors);

  function drawLineColors() {
    var data = new google.visualization.DataTable();
     data.addColumn('string', 'time');
     data.addColumn('number', 'Temperature');
     data.addColumn('number', 'Humidity');

      data.addRows([  

        <?php 
       if(mysqli_num_rows($result)>0){
           while($row = mysqli_fetch_array($result)){
               echo " 
           ['".$row['time']."',".$row['temp'].",".$row['hum']."],";
           }   
       }
     ?>
          ]);
          console.log(data);

   var options = {
    hAxis: {
      title: 'Time'
    },
    vAxis: {
      title: 'Sensors Scale'
    },
    colors: ['#a52714', '#097138']
  };

  var chart = new 

  google.visualization.LineChart(document.getElementById('chart_div'));
  chart.draw(data, options);
  }
  </script>

1 Ответ

1 голос
/ 12 мая 2019

Вы хотите использовать .getValue(rowIndex, columnIndex) (см. документы ).

Таким образом, вы также можете легко выбрать то, что вы хотите, например, Вы можете решить, что хотите использовать только температуру или значения влажности, например, а не только весь ряд.

let rowIndex = data.getNumberOfRows() - 1; //gets the row index of last row
let lastTime = data.getValue(rowIndex, 0); //gets the first column
let lastTemp = data.getValue(rowIndex, 1); //gets second column
let lastHum = data.getValue(rowIndex,2); //gets third column

console.log(`[${lastTime}, ${lastTemp}, ${lastHum}]`);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...