Erstellen eines Pie Charts
Erstellung in Jaspersoft Studio
1. Über einen Klick in der Palette auf das Chartelement und Ziehen auf die Arbeitsfläche öffnet sich der Auswahldialog für alle zur Verfügung stehenden Diagramme.
2. Wählen sie zwischen Pie Chart und Pie3D Chart und klicken sie auf "Next" falls sie das Chart konfigurieren möchten oder auf Finish, um es sofort anzulegen.
3. Klicken sie auf Next > um das Pie Chart zu konfigurieren
4. Klicken sie auf Finish um das Chart zu erstellen und den Dialog zu schließen
Folgenden Konfigurationen können vorgenommen werden:
1 : Unter Value wird der numerische Wert angegeben, der mittels Pie Chart dargestellt werden soll (z.B. Die Bestellsumme)
2 : Unter Label gibt man an, welches Label die einzelnen Anteile erhalten sollen (z.B. Die Werte selbst; im Beispiel Bestellsumme, oder dem Schlüssel, dem die Werte zugeordnet werden; im Beispiel: Lieferant)
3 : Unter Key gibt man den zugehörigen Key, nachdem die Werte geordnet werden sollen (z.B. Die Lieferanten; Entspricht in der Datenquelle bspw. der GROUP BY - Klausel); Der Key wird als Legende unterhalb der Grafik angezeigt.
4 : Hier können Einstellungen zur Pie Chart gemacht werden
5 : Einstellungen für Reset on sollten im Normalfall auf Report eingestellt sein
Formatierung von Pie Charts
Die Formatierung des Pie Charts kann, je nach Größe und bereitstehendem Platz, über 3 Anpassungen verbessert werden.
1. Anpassung: Formatierung des Labels mit Hilfe von Makros in Jaspersoft Studio (Property: Label Format)
{0} nur Text {1} mit Number {2} Prozentangabe
2. Anpassung: Schriftart und Größe muss manuell ins XML eingetragen werden.
<pie3DPlot depthFactor="0.1" isCircular="true" labelFormat="{0} {2}" legendLabelFormat=""> <plot/> <itemLabel> <font fontName="Calibri" size="8"/> </itemLabel> </pie3DPlot>
Das gilt für pie3DPlot als auch für piePlot.
3. Anpassung: Anpassung der Labelgröße über eigene Customizer Class. Hier kann ebenfalls die Schrift gesetzt werden.
package org.axismanipulation; import java.awt.Color; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PiePlot; import net.sf.jasperreports.engine.JRAbstractChartCustomizer; import net.sf.jasperreports.engine.JRChart; import java.awt.Font; public class PieManipulation extends JRAbstractChartCustomizer{ @Override public void customize(JFreeChart chart, JRChart jasperChart) { PiePlot plot = (PiePlot)chart.getPlot(); plot.setInteriorGap(0.02); plot.setMaximumLabelWidth(0.20); plot.setBackgroundPaint(Color.white); Font font = new Font("Calibri", Font.PLAIN, 7); plot.setLabelFont(font); plot.setCircular(true); } }