Как работать с данными даты и времени из БД с CanvasJS - PullRequest
0 голосов
/ 14 декабря 2018

Мне нужно сделать 4 диаграммы области с одним и тем же набором данных (из базы данных).В таблице данные даты отформатированы так: «2018-08-15 20:40:00», а для данных Y - числовое значение из другого столбца.Я выяснил, как создать массив с данными и передать его через json в сценарий, но я не могу найти путь к диаграмме, чтобы получить правильные данные.

$sql = 'SELECT timestamp, valor
        FROM historial
        WHERE YEAR(timestamp) = YEAR(CURDATE())';
        // echo $sql."<br><br>";
$resYear = mysqli_query($conn, $sql) or die(mysqli_error($conn));

$arrYear = array();

while($datos = mysqli_fetch_array($resYear, MYSQLI_NUM)){
    $arrYear[] =  array("x" => new strtotime($datos[0]), "y" => $datos[1]);
}

<script>
            $(function () {
                    var chart = new CanvasJS.Chart("year-chart", {
                    theme: "light2", // "light1", "light2", "dark1", "dark2"
                    animationEnabled: true,
                    zoomEnabled: true,
                    title: {
                        text: "Registros del año"
                    },
                    data: [{
                        type: "area",
            xValueType: "dateTime",
                        dataPoints: <?php echo json_encode($arrYear, JSON_NUMERIC_CHECK) ?>
                    }]
                });
                chart.render();
            });

        </script>

После этого я должен поместить эти данные в одну диаграмму, визуализированную во времени по годам;месяц за другим, недельный за третий и за день (как между часами и минутами) за последний.Я тоже не понимаю, как это сделать.

...