Как отобразить результат вычитания между двумя массивами в chart.js?
Я пишу код PHP, чтобы показать графическое представление данных из базы данных MySQL. Код отлично работает с данными, которые уже есть в базе данных, но не появляется, когда я пытаюсь выполнить операции с этими данными.
Я предполагаю, что моя проблема лежит на стороне php - способ вычитания двух массивов, так как var_dump отображает массив значений внутри цикла while, но одно значение вне его. Я не могу обдумать это. Мой PHP-код выглядит следующим образом:
require "connect.php";
$db_conn = OpenCon();
$dates = '';
$data1 = '';
$data2 = '';
$diff = '';
$items = array();
$get_all_data = "SELECT * from test1";
$total_result = mysqli_query($db_conn, $get_all_data);
while ($row = mysqli_fetch_array($total_result)) {
$date = date('d, M, Y', strtotime($row['my_date']));
$dates = $dates.'"'.$date.'",';
$data1 = $data1. '"'. $row['data1'].'",';
$data2 = $data2. '"'. $row['data2'].'",';
$v1 = $row['data1'];
$v2 = $row['data2'];
$diff=$v1-$v2;
$diff = (string)$diff;
$items[] = $diff;
}
$diff = implode(",", $items);
$dates = trim($dates, ",");
$data1 = trim($data1, ",");
$data2= trim($data2, ",");
$diff= trim($diff, ",");
кусок моего скрипта для отображения графика:
{ //dataset also includes data1 and data2, which are displayed correctly
label: 'Difference',
data: [<?php echo $diff; ?>],
backgroundColor: 'red'
}
Здесь я пытаюсь показать "data1" и "data2" (из db), а также разницу между ними (data1-data2). График правильно отображает "data1" и "data2", но результат вычитания между data1 и data2 вообще не отображается. Я буду очень признателен за все предложения.
ОБНОВЛЕНИЕ: я обновил код, и теперь он работает как нужно.