web-dev-qa-db-fra.com

Comment masquer les valeurs nulles dans le graphique à colonnes

J'utilise un graphique à colonnes et affiche ces valeurs en haut de chaque barre. Je ne veux pas afficher les valeurs si elles sont 0. Comment faire? Voici mon morceau de code

var series = {  data: [],   
                dataLabels: {
                    enabled: true,
                    color: 'black',
                    align: 'right',
                    x: -3,
                    y: 3,
                    style: {
                        color: '#333',
                        fontWeight: 'bold',
                        fontSize: '12px',
                        fontFamily: 'Trebuchet MS, Verdana, sans-serif'
                    }
                },
                pointWidth: 28
};
17
arun

Vous pouvez utiliser le formateur. Quelque chose comme ça devrait le faire:

dataLabels: {
  formatter:function() {
    if(this.y != 0) {
      return this.y;
    }
  }
}

http://api.highcharts.com/highcharts#plotOptions.series.dataLabels.formatter

31
jlbriggs

Vous pouvez utiliser le formateur d'étiquettes de données et ajouter une condition qui vérifie si la valeur est supérieure à zéro.

http://jsfiddle.net/DdvGm/

plotOptions: {
        series: {
            dataLabels:{
                enabled:true,
                formatter:function(){
                    if(this.y > 0)
                        return this.y;
                }
            }
        }
    },

http://api.highcharts.com/highcharts#plotOptions.column.dataLabels.formatter

13
Sebastian Bochan

Voici la réponse, par la brièveté de votre question, je ne suis pas pleinement poursuivi si les réponses existantes sont correctes.

Dans les highcharts, 0 est considéré comme un nombre, il sera donc affiché sur les graphiques. Mais null est caché. Ainsi, lorsque vous ajoutez des données, vous devez vérifier si la valeur est 0 et si elle l'est, puis la modifier en null.

Faites moi savoir si vous avez des questions.

Violon: http://jsfiddle.net/8kr0tods/ Voir que mai est un 0 et mar est nul, et null est caché.

    if($VAL==0)
    {
        $VAL='null';
    }
8
M H