# HG changeset patch # User Ingo Weinzierl # Date 1277797056 0 # Node ID 86ca3c10523fb00d013ebf6732d5bdf7ed070688 # Parent 8ce8979f51df469c2f0d0d5f3a12f964b086646d Adjust the format of axes labels in histograms corresponding the specified locale (issue316). gnv-artifacts/trunk@1238 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 8ce8979f51df -r 86ca3c10523f gnv-artifacts/ChangeLog --- a/gnv-artifacts/ChangeLog Tue Jun 29 07:09:13 2010 +0000 +++ b/gnv-artifacts/ChangeLog Tue Jun 29 07:37:36 2010 +0000 @@ -1,3 +1,13 @@ +2010-06-29 Ingo Weinzierl + + Issue316 + + * src/main/java/de/intevation/gnv/chart/DefaultHistogram.java: Set the + specified locale in the constructor which is used to localize the axes. + + * src/main/java/de/intevation/gnv/chart/AbstractHistogram.java: Adjust the + localization of x and y axes corresponding the specified locale. + 2010-06-29 Ingo Weinzierl Issue318 diff -r 8ce8979f51df -r 86ca3c10523f gnv-artifacts/src/main/java/de/intevation/gnv/chart/AbstractHistogram.java --- a/gnv-artifacts/src/main/java/de/intevation/gnv/chart/AbstractHistogram.java Tue Jun 29 07:09:13 2010 +0000 +++ b/gnv-artifacts/src/main/java/de/intevation/gnv/chart/AbstractHistogram.java Tue Jun 29 07:37:36 2010 +0000 @@ -8,6 +8,9 @@ import org.jfree.chart.ChartTheme; import org.jfree.chart.JFreeChart; +import org.jfree.chart.axis.NumberAxis; +import org.jfree.chart.axis.TickUnitSource; + import org.jfree.chart.plot.PlotOrientation; import org.jfree.chart.plot.XYPlot; @@ -91,6 +94,8 @@ theme.apply(chart); adjustPlot(); + adjustDomainAxis(chart); + adjustRangeAxis(chart); return chart; } @@ -108,6 +113,26 @@ } + protected void adjustDomainAxis(JFreeChart chart) { + XYPlot plot = (XYPlot) chart.getPlot(); + NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis(); + + TickUnitSource tus = domainAxis.createStandardTickUnits(locale); + domainAxis.setStandardTickUnits(tus); + } + + + protected void adjustRangeAxis(JFreeChart chart) { + XYPlot plot = (XYPlot) chart.getPlot(); + NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis(); + + TickUnitSource tus = rangeAxis.createStandardTickUnits(locale); + rangeAxis.setStandardTickUnits(tus); + } + + + + /** * This method needs to be implemented by subclasses and should add valid * HistogramDataset objects to the created chart. It is called diff -r 8ce8979f51df -r 86ca3c10523f gnv-artifacts/src/main/java/de/intevation/gnv/chart/DefaultHistogram.java --- a/gnv-artifacts/src/main/java/de/intevation/gnv/chart/DefaultHistogram.java Tue Jun 29 07:09:13 2010 +0000 +++ b/gnv-artifacts/src/main/java/de/intevation/gnv/chart/DefaultHistogram.java Tue Jun 29 07:37:36 2010 +0000 @@ -1,5 +1,6 @@ package de.intevation.gnv.chart; +import java.util.Locale; import java.util.Map; import org.apache.log4j.Logger; @@ -77,6 +78,7 @@ ) { super(labels, data, theme); this.requestParameter = requestParameter; + this.locale = (Locale) requestParameter.get("locale"); }