Mercurial > dive4elements > gnv-client
diff gnv-artifacts/src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java @ 450:20a480753ff9
Render labels in vertical cross section charts.
gnv-artifacts/trunk@498 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 04 Jan 2010 02:49:42 +0000 |
parents | c7ca2fce041f |
children | 79e80c289018 |
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java Sun Jan 03 15:57:02 2010 +0000 +++ b/gnv-artifacts/src/main/java/de/intevation/gnv/chart/VerticalCrossSectionChart.java Mon Jan 04 02:49:42 2010 +0000 @@ -2,6 +2,8 @@ import java.util.Locale; +import java.text.NumberFormat; + import java.awt.Color; import java.awt.Paint; @@ -54,6 +56,25 @@ } } // class PalettePaintLookup + public static class LocalizedLabelGenerator + extends PolygonRenderer.DefaultLabelGenerator + { + protected NumberFormat format; + + public LocalizedLabelGenerator() { + } + + public LocalizedLabelGenerator(NumberFormat format) { + this.format = format; + } + + protected String toString(Object label) { + return label instanceof Number + ? format.format(((Number)label).doubleValue()) + : super.toString(label); + } + } // class LocalizedLabelGenerator + protected JFreeChart chart; protected AttributedXYColumns columns; @@ -95,8 +116,13 @@ } } + NumberFormat format = NumberFormat.getInstance(locale); + format.setMinimumFractionDigits(0); + format.setMaximumFractionDigits(2); + PolygonRenderer renderer = new PolygonRenderer( - new PalettePaintLookup(palette)); + new PalettePaintLookup(palette), + new LocalizedLabelGenerator(format)); ValueAxis domainAxis = new NumberAxis(xAxis); ValueAxis rangeAxis = new NumberAxis(yAxis);