Chart.js не должно начинаться по оси Y

#javascript #chart.js

#javascript #chart.js

Вопрос:

вот как выглядит код прямо сейчас С предварительным просмотром 1-го изображения, которое в настоящее время используется Chart.js .

Пожалуйста, дайте мне несколько советов о том, как моя диаграмма данных не должна начинаться по оси Y.

ФАКТИЧЕСКИЙ РЕЗУЛЬТАТ приведенного ниже кода. введите описание изображения здесь

  var ctx = document.getElementById('myChart').getContext('2d');
    var myChart = new Chart(ctx, {
        type: 'line',
        data: {
            labels: [<?php echo trim($labels);?>],
            datasets: [{
                label: 'Weekly Revenue',
                data: [ 0, 100, 3000, 4000, 5000, 6000, 7000, 8000,9000,10000,],    
                fill: false,
                backgroundColor: [
                    'rgba(255, 99, 132, 0.2)',
                    'rgba(54, 162, 235, 0.2)',
                    'rgba(255, 206, 86, 0.2)',
                    'rgba(75, 192, 192, 0.2)',
                    'rgba(153, 102, 255, 0.2)',
                    'rgba(75, 192, 192, 0.2)',
                    'rgba(153, 102, 255, 0.2)',
                    'rgba(255, 159, 64, 0.2)'
                    
                ],
                borderColor: [
                    'rgba(255, 99, 132, 1)',
                    'rgba(54, 162, 235, 1)',
                    'rgba(255, 206, 86, 1)',
                    'rgba(75, 192, 192, 1)',
                    'rgba(153, 102, 255, 1)',
                    'rgba(75, 192, 192, 1)',
                    'rgba(153, 102, 255, 1)',
                    'rgba(255, 159, 64, 1)'
                ],
                borderWidth: 3
            },
        ]
        },
        options: {
         
            scales: {
                yAxes: [{
                    ticks: {
                        beginAtZero: true,
                        callback: function(value, index, values) {
                            return value.toLocaleString("en-PH",{style:"currency", currency:"PHP"});
                        }
                    }
                }]
            }
        }
    });
     
 <div class="chart-container"  style="min-width: 210px; height: 400px; margin: 0 auto">
<canvas id="myChart"></canvas>
 </div>    

Наведение: Данные начинаются не по оси Y.

введите описание изображения здесь

Ответ №1:

Самый простой способ создать границу между осью Y и вашей первой точкой — добавить пустой разделитель строк в labels и нулевое значение в data :

 {
        type: 'line',
        data: {
            labels: ['', '2020-12-27','2020-12-28','2020-12-29','2020-12-31','2020-12-31','2020-01-01','2020-01-02','2020-01-03','2020-01-04','2020-01-05'],
            datasets: [{
                label: 'Weekly Revenue',
                data: [ null, 0, 100, 3000, 4000, 5000, 6000, 7000, 8000,9000,10000,],    
                fill: false,
                backgroundColor: [
                    'rgba(255, 99, 132, 0.2)',
                    'rgba(54, 162, 235, 0.2)',
                    'rgba(255, 206, 86, 0.2)',
                    'rgba(75, 192, 192, 0.2)',
                    'rgba(153, 102, 255, 0.2)',
                    'rgba(75, 192, 192, 0.2)',
                    'rgba(153, 102, 255, 0.2)',
                    'rgba(255, 159, 64, 0.2)'
                    
                ],
                borderColor: [
                    'rgba(255, 99, 132, 1)',
                    'rgba(54, 162, 235, 1)',
                    'rgba(255, 206, 86, 1)',
                    'rgba(75, 192, 192, 1)',
                    'rgba(153, 102, 255, 1)',
                    'rgba(75, 192, 192, 1)',
                    'rgba(153, 102, 255, 1)',
                    'rgba(255, 159, 64, 1)'
                ],
                borderWidth: 3
            },
        ]
        },
        options: {
         
            scales: {
                yAxes: [{
                    ticks: {
                        beginAtZero: true,
                        callback: function(value, index, values) {
                            return value.toLocaleString("en-PH",{style:"currency", currency:"PHP"});
                        }
                    }
                }]
            }
        }
    }
 

chart.js пробел слева

Комментарии:

1. Спасибо, я приму это как ответ. В настоящее время я извлекаю данные из своей базы данных, первый результат дает мне неверную дату. Должен ли я изменить его в своем запросе?