Bar Stacked graphique avec composition en pourcentage à l'intérieur du bar et au total au-dessus de la barre à JFreeChart
-
02-10-2019 - |
Question
Je suis en train de créer un graphique à barres empilées. Ma composition exigence est que j'ai besoin de pourcentage dans la barre et nombre total au-dessus de la barre. S'il vous plaît suggérer des solutions.
Mon exigence: Exemple: http://www.jfree.org/jfreechart/api/ javadoc / images / StackedBarRenderer3DSample.png
Je veux composition en pourcentage dans la barre et de la composition totale sur la partie supérieure de la barre.
La solution
Il est pas clair ce que vous faites maintenant, mais en utilisant un StackedBarRenderer
avec setRenderAsPercentages(true)
affichera les pourcentages. Pour obtenir le total, étendre StackedBarRenderer
, boucle à travers l'ensemble de données pour chaque colonne, et drawItem()
override pour dessiner le résultat. Un exemple peut être trouvé dans le JFreeChart Demo dans le cadre de StackedBarChartDemo3
.
Comme alternative, envisager une coutume CategoryToolTipGenerator
, ajouté via setBaseToolTipGenerator()
.
Addendum: Vous lié à un exemple en utilisant StackedBarRenderer3D
, qui a également une méthode de setRenderAsPercentages()
. Elle peut être étendue de la même.
Autres conseils
J'ai couru aussi dans le même problème. Pour une raison quelconque la dernière version de JFreeChart ne présente pas la composition en pourcentage dans la barre. Voici comment je l'ai eu au travail:
StackedBarRenderer br = new StackedBarRenderer(true); //enable perc. display
br.setBarPainter(new StandardBarPainter());
br.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
br.setBaseItemLabelsVisible(true);
chart.getCategoryPlot().setRenderer(br);
Hope this helps