Mercurial > dive4elements > river
view artifacts/src/main/java/org/dive4elements/river/jfree/StyledXYSeries.java @ 7012:9f45c17e8fda
issue1465: Initialize sediment load fraction values with NaN instead of 0,
to symbolize 'no measurement'.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Fri, 13 Sep 2013 16:03:05 +0200 |
parents | 1b35b2ddfc28 |
children | d20a26e96ef1 |
line wrap: on
line source
/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde * Software engineering by Intevation GmbH * * This file is Free Software under the GNU AGPL (>=v3) * and comes with ABSOLUTELY NO WARRANTY! Check out the * documentation coming with Dive4Elements River for details. */ package org.dive4elements.river.jfree; import java.util.List; import org.apache.log4j.Logger; import org.dive4elements.river.themes.ThemeDocument; import org.jfree.data.xy.XYDataItem; import org.jfree.data.xy.XYSeries; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class StyledXYSeries extends XYSeries implements StyledSeries, HasLabel { private static final Logger logger = Logger.getLogger(StyledXYSeries.class); protected Style style; /** If this Series is to be labelled, use this String as label. */ protected String label; public StyledXYSeries(String key, ThemeDocument theme) { this(key, true, theme); this.label = key.toString(); } public StyledXYSeries(String key, ThemeDocument theme, XYSeries unstyledSeries) { this(key, theme); add(unstyledSeries); } /** * @param sorted whether or not to sort the points. Sorting will move NANs * to one extrema which can cause problems in certain * algorithms. */ public StyledXYSeries(String key, boolean sorted, ThemeDocument theme) { super(key, sorted); setStyle(new XYStyle(theme)); this.label = key.toString(); } public StyledXYSeries( String key, boolean sorted, boolean allowDuplicateXValues, ThemeDocument theme ) { super(key, sorted, allowDuplicateXValues); setStyle(new XYStyle(theme)); this.label = key.toString(); } @Override public void setStyle(Style style) { this.style = style; } @Override public Style getStyle() { return style; } @Override public String getLabel() { return label; } @Override public void setLabel(String label) { this.label = label; } protected void add(XYSeries series) { List<XYDataItem> items = series.getItems(); add(items); } protected void add(List<XYDataItem> items) { for(XYDataItem item : items) { add(item.getXValue(), item.getYValue()); } } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :