Utilisation du taglib <jalios:chart>

Joris Teisseire · le 07/09/18 à 10:01

Bonjour, 

Je souhaite créer un graphique statistique de la manière suivante (Nombre moyen de visite par heure) : 

<jalios:chart id='chartMoy' chart='<%= new TimeChart().addSeries(intVisitsHoraire, extVisitsHoraire) %>' >
{
  type: 'bar',

  options: {
    scales: {
      xAxes: [{
        time: { 
          displayFormats: { 
            hour :   'HH'
          }
        }
      }]
    },
    
    tooltips: {
      callbacks: {
        title: function(tooltipItem, data) {
          var milliseconds = tooltipItem[0].xLabel;
          var date = new Date(milliseconds);
          return "Heure : " + date.getHours();
        }
      }              
    }
  }
}
</jalios:chart>

 

Mon soucis est que le type "bar" ne s'applique pas, seul le type "line" persiste. 

Comment puis-je appliquer le type "bar" ?

 

Mon rendu : 

mceclip0

13 pts
Ludovic Smadja - le 07/09/18 à 11:46
Meilleure réponse

Bonjour,

Vous avez 2 possibilités pour faire cela.

Soit vous utilisez une BarSerie à la construction du jeu de données si vous pouvez, comme décrit dans la documentation (Lien en accès restreint) . Le tag effectuera alors le rendu correct.

L'autre solution est effectivement de positionner le type de graphe à Bar mais dans notre implémentation du tag chart, la série impose son type de rendu sur le rendu global du graphe (d'où la classe BarSeries).

Dans ce cas, il faut venir modifier le json utilisé pour configurer le chart comme vous avez fait mais en modifiant la série (exemple pour la deuxième série) et non le chart global:

{
    "datasets": [
      {}, // on ne modifie pas la première série
      {
         "type": "bar"
      },
      {}
]
}
9 pts