DonChiechot
Grünschnabel
Hallo Community,
ich benötige mal wieder eure Hilfe bei einem Problem, welches für mich unverständlich ist.
Ich bin momentan dabei eine Applitkation zu schreiben in der ich sehr viele Diagramme mittels JFreeChart eingebaut habe. Das passt auch alles ganz gut. Gleichzeitig nutze ich die Reporting Library JasperReports zur Erstellung diverser Berichte (die Berichte enthalten auch Diagramme).
Problem ist nun, sobald ich aus der Anwendung heraus einen Bericht erstellen lasse, ändert sich das Aussehen meiner Diagramme in der GUI. Diagramme die bereits angezeigt werden verändern sich nicht, aber sobald ich ein neues Diagramm zeichnen lasse sieht es nicht mehr so aus wie zuvor.
Zur Verdeutlichung nochmal ein Beispiel mit Code:
Rufe ich die Funktion auf, bevor ich einen Bericht erstellen lasse erscheint der Chart in folgendem Aussehen (so soll es auch sein):
Nachdem ich mit JasperReports einen Report erstellt habe, rufe ich selbige Funktion nochmal auf. Das Ergebnis ist dann folgendes:
Meine Fragen:
1. Woher kommt das?
2. Wie krieg ich das weg?
Vielen Dank für eure Hilfe!
ich benötige mal wieder eure Hilfe bei einem Problem, welches für mich unverständlich ist.
Ich bin momentan dabei eine Applitkation zu schreiben in der ich sehr viele Diagramme mittels JFreeChart eingebaut habe. Das passt auch alles ganz gut. Gleichzeitig nutze ich die Reporting Library JasperReports zur Erstellung diverser Berichte (die Berichte enthalten auch Diagramme).
Problem ist nun, sobald ich aus der Anwendung heraus einen Bericht erstellen lasse, ändert sich das Aussehen meiner Diagramme in der GUI. Diagramme die bereits angezeigt werden verändern sich nicht, aber sobald ich ein neues Diagramm zeichnen lasse sieht es nicht mehr so aus wie zuvor.
Zur Verdeutlichung nochmal ein Beispiel mit Code:
Java:
private JFreeChart createQuantityChart(CategoryDataset dataset) {
// create the chart...
JFreeChart chart = ChartFactory.createBarChart(
null, // chart title
null, // domain axis label
null, // range axis label
dataset, // data
PlotOrientation.VERTICAL, // orientation
true, // include legend
true, // tooltips?
false // URLs?
);
chart.setPadding(new RectangleInsets(0,0,6,0));
chart.getLegend().setItemFont(chart.getLegend().getItemFont().deriveFont(Font.PLAIN, 11));
chart.getLegend().setFrame(BlockBorder.NONE);
// get a reference to the plot for further customisation...
CategoryPlot plot = (CategoryPlot) chart.getPlot();
plot.setDomainGridlinesVisible(true);
plot.setRangePannable(true);
plot.setRangeZeroBaselineVisible(false);
// set the range axis to display integers only...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setRangeType(RangeType.POSITIVE);
// disable bar outlines...
LayeredBarRenderer renderer = new LayeredBarRenderer();
renderer.setDrawBarOutline(false);
renderer.setSeriesPaint(0, Color.red);
renderer.setSeriesPaint(1, Color.green);
plot.setRenderer(renderer);
// for this renderer, we need to draw the first series last...
plot.setRowRenderingOrder(SortOrder.DESCENDING);
return chart;
}
Rufe ich die Funktion auf, bevor ich einen Bericht erstellen lasse erscheint der Chart in folgendem Aussehen (so soll es auch sein):
Nachdem ich mit JasperReports einen Report erstellt habe, rufe ich selbige Funktion nochmal auf. Das Ergebnis ist dann folgendes:
Meine Fragen:
1. Woher kommt das?
2. Wie krieg ich das weg?
Vielen Dank für eure Hilfe!
Zuletzt bearbeitet: