Я пытаюсь отобразить в виде диаграммы некоторые данные о временных рядах с помощью chart.js. Данные извлекаются из psql, преобразуются в json и отправляются в качестве аргумента функции js для отображения диаграммы.
Данные получены в js должным образом, но есть ошибки «Uncaught RefernceError» о вызове функции js в HTML.
EDIT
Это поднимает эти ошибки:
Uncaught RefernceError: dspChrt is not defined @ line
dspChrt(WData);
</script>
</body>
</html>
Вот мой код:
JS
<script>
var Device_Data;
var rssi, batt;
var rssiArray = [];
var battArray = [];
var N = 12;
for (i = 0; i < N; i++) {
rssiArray.push(0);
battArray.push(0); }
function dspChrt(Device_Data) {
console.log(Device_Data[0].rssi);
console.log(Device_Data[1].battery_voltage_mv);
rssi = Device_Data[0].rssi;
batt = Device_Data[1].battery_voltage_mv;
rssiArray.shift();
rssiArray.push(rssi);
battArray.shift();
battArray.push(batt);
var ctx = document.getElementById('myChart').getContext('2d');
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: [new Date()],
datasets: [{
label: 'rssi',
data: rssiArray,
backgroundColor: "rgba(153,255,51,0.4)"
}, {
label: 'Battery_Voltage',
data: battArray,
backgroundColor: "rgba(255,153,0,0.4)"
}]
}
options: {
scales: {
xAxes: [{
type: 'time',
time: {
unit: 'hour',
}
}]
}
}
});
}
//var myVar = setInterval(dspChrt, 60000);
</script>
HTML / PHP
<code> <?php
require("Connection.php");
$stmt = $conn->prepare("Select date_time, battery_voltage_mv FROM measuring_device_statuses LIMIT 24");
$stmt->execute();
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
$WData = $stmt->fetchAll();
/*
echo "<pre>".print_r($WData, true)."
";
умереть();
* /
?>
var WData = <? php print_r (json_encode ($ WData));?>;
//console.log(WData);
dspChrt (WDATA);