33 votes

Définir la taille minimale des étapes dans les graphiques js

J'utilise Chart.js version 2.0 pour dessiner des graphiques, je veux définir taille minimale des étapes dans un graphique à barres

var myNewChart = new Chart(grapharea, {
                type: 'bar',
                data: barData,
                options: {
                    responsive: true,                        
                    scales: {
                        yAxes: [
                            {
                                ticks: {
                                    min: 0, // it is for ignoring negative step.
                                    beginAtZero: true,
                                    stepSize: 1  // if i use this it always set it '1', which look very awkward if it have high value  e.g. '100'.
                                }
                            }
                        ]
                    }
                }
            });

cette fois, j'utilise

stepSize : 1

J'utilise cette taille de pas pour ignorez la valeur du point, par exemple "0,5". il s'affiche lorsque les valeurs maximales du graphique sont inférieures, par exemple '2'.
Si je l'utilise, le pas est toujours fixé à '1', ce qui est très gênant s'il a une valeur élevée, par exemple '100'.

Je suis à la recherche d'une telle chose : suggestedMin = 1

Existe-t-il un moyen de définir la taille minimale du pas qui ne doit pas être fixée dans les cas de valeurs élevées ?

60voto

Daantie Points 483

Si vous ne souhaitez pas afficher les étiquettes de valeur de point (par exemple 0,5), vous pouvez écrire une fonction de rappel pour filtrer les étiquettes de valeur de point au lieu d'utiliser stepSize.

Comme ça :

ticks: {
    min: 0, // it is for ignoring negative step.
    beginAtZero: true,
    callback: function(value, index, values) {
        if (Math.floor(value) === value) {
            return value;
        }
    }
}

C'est du bricolage : https://jsfiddle.net/ma7h611L/

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