170 votes

comment définir la valeur de départ de "0" dans chartjs?

voici mon code. j'ai besoin de définir la valeur initiale de "0" dans les deux axes x et y échelles. J'ai essayé la dernière version échelles option.

graphOptions = {               
            ///Boolean - Whether grid lines are shown across the chart
            scaleShowGridLines: false,    
            tooltipTitleTemplate: "<%= label%>",
            //String - Colour of the grid lines
            scaleGridLineColor: "rgba(0,0,0,.05)",
            //Number - Width of the grid lines
            scaleGridLineWidth: 1,
            //Boolean - Whether to show horizontal lines (except X axis)
            scaleShowHorizontalLines: true,
            //Boolean - Whether to show vertical lines (except Y axis)
            scaleShowVerticalLines: true,
            //Boolean - Whether the line is curved between points
            bezierCurve: true,
            //Number - Tension of the bezier curve between points
            bezierCurveTension: 0.4,
            //Boolean - Whether to show a dot for each point
            pointDot: true,
            //Number - Radius of each point dot in pixels
            pointDotRadius: 4,
            //Number - Pixel width of point dot stroke
            pointDotStrokeWidth: 1,               
            pointHitDetectionRadius: 20,               
            datasetStroke: true,
            datasetStrokeWidth: 2,
            datasetFill: true,               
            legendTemplate: "<ul class=\"<%=name.toLowerCase()%>-legend\"><% for (var i=0; i<datasets.length; i++){%><li><span style=\"background-color:<%=datasets[i].strokeColor%>\"></span><%if(datasets[i].label){%><%=datasets[i].label%><%}%></li><%}%></ul>"
        };
        var LineChart = new Chart(ctx).Line(graphData, graphOptions);
   }     

423voto

xnakos Points 4212

Pour Chart.js 2.*, l'option pour le barème de commencer à zéro est répertorié dans les options de configuration de l'échelle linéaire. Il est utilisé pour les données numériques, ce qui devrait probablement être le cas pour l'axe des y. Donc, vous avez besoin d'utiliser ce:

options: {
    scales: {
        yAxes: [{
            ticks: {
                beginAtZero: true
            }
        }]
    }
}

Un exemple de graphique de ligne est également disponible ici où l'option est utilisée pour l'axe des ordonnées. Si vos données numériques sur l'axe des x, utilisez xAxes au lieu de yAxes. Note qu'un tableau (et au pluriel) est utilisé pour l' yAxes (ou xAxes), car vous pouvez ainsi avoir plusieurs axes.

5voto

wmash Points 1100

Merci d'ajouter cette option:

//Boolean - Whether the scale should start at zero, or an order of magnitude down from the lowest value
scaleBeginAtZero : true,

(Référence: Chart.js)

N. B: La solution originale que j'ai posté était pour Highcharts, si vous n'êtes pas à l'aide de Highcharts alors s'il vous plaît supprimer l'étiquette pour éviter toute confusion

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X