Me gustaría dibujar un gráfico usando RPi , MySQLi , PHP y Chart.js . Para hacer eso, seguí este tutorial :
Por ahora, mi gráfico está vacío. El eje X está 'indefinido' y el eje Y tiene un rango incorrecto. En mi caso, el eje X debería mostrar valores de formato de hora (HH:MM:SS) . ¿Alguien sabe cómo configurar correctamente los datos de tiempo recibidos de MySQL para Chart.js?
También verifiqué esta solución pero no funcionó para mí:
¡Gracias!
<?php $servername = "localhost"; $username = "airqualitysensor"; $password = "password"; $database = "temperatura"; $conn = new mysqli($servername, $username, $password, $database); if ($conn->connect_error){ die("Connection failed: ". $conn->connect_error); exit(); } $sql = "SELECT * FROM temperaturaodczyt"; $result = $conn->query($sql); $data = array(); foreach($result as $row){ $data[] = $row; } $result->close(); $conn->close(); print json_encode($data); ?> $(document).ready(function(){ $.ajax({ url:"http://localhost/index.php", method: "GET", success: function(data) { console.log(data); var tczas = []; var temperatura = []; for (var i in data){ tczas.push(data[i].tczas); temperatura.push(data[i].temperatura); } var chartdata = { labels: tczas, datasets : [ { label : "Zmierzona temperatura", fill: false, lineTension: 0.1, backgroundColor: "rgb(200, 200, 200, 0.75)", borderColor: "rgb(200, 200, 200, 0.75)", hoverBackgroundColor: "rgb(200, 200, 200, 1)", hoverBorderColor: "rgb(200, 200, 200, 0.75)", data: temperatura } ] }; var ctx = $("#mycanvas"); var lineGraph = new Chart(ctx, { type: "line", data: chartdata }); }, error: function(data) { } }); });