Javascript Chart.js MySQL PHP时间刻度
我想用Javascript Chart.js MySQL PHP时间刻度,javascript,php,mysql,ajax,chart.js,Javascript,Php,Mysql,Ajax,Chart.js,我想用RPi、MySQLi、PHP和绘制一个图表。为此,我遵循: 现在,我的图表是空的。X轴“未定义”,Y轴的范围错误。 在我的例子中,X轴应该显示时间格式值(HH:MM:SS)。有人知道如何正确设置从MySQL接收到的Chart.js时间数据吗 我也检查了这个,但它对我不起作用: 谢谢大家! index.php 请尽可能具体地说明什么不起作用。也许你没有正确地解析json,所以请尝试在成功函数的开头添加data=jQuery.parseJSON(data)。(1)由于它看起来像index.p
RPi
、MySQLi
、PHP
和绘制一个图表。为此,我遵循:
现在,我的图表是空的。X轴“未定义”,Y轴的范围错误。
在我的例子中,X轴应该显示时间格式值(HH:MM:SS)。有人知道如何正确设置从MySQL接收到的Chart.js时间数据吗
我也检查了这个,但它对我不起作用:
谢谢大家!
index.php
请尽可能具体地说明什么不起作用。也许你没有正确地解析json,所以请尝试在成功函数的开头添加
data=jQuery.parseJSON(data)
。(1)由于它看起来像index.php
不需要来自app.js
的任何输入,所以可能值得单独运行该程序,并且“请参阅”JSON数据的确切外观(稍后您甚至可以将其中的一部分粘贴到此处)。(2)从您选择的chart.js
示例中选取一个独立示例,手动创建静态数据集(可能基于您希望显示的字段)以绘制图形。(3)这样,您就可以知道数据的X
和Y
轴是否与chart.js
所期望的完全相同,或者结果是否需要稍微修改/转换。DrKey-这很有帮助,非常感谢:)
<?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) {
}
});
});