org.jfree.data.general.ValueDataset Java Examples
The following examples show how to use
org.jfree.data.general.ValueDataset.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: MeterPlot.java From SIMVA-SoS with Apache License 2.0 | 6 votes |
/** * Creates a new plot that displays the value from the supplied dataset. * * @param dataset the dataset (<code>null</code> permitted). */ public MeterPlot(ValueDataset dataset) { super(); this.shape = DialShape.CIRCLE; this.meterAngle = DEFAULT_METER_ANGLE; this.range = new Range(0.0, 100.0); this.tickSize = 10.0; this.tickPaint = Color.white; this.units = "Units"; this.needlePaint = MeterPlot.DEFAULT_NEEDLE_PAINT; this.tickLabelsVisible = true; this.tickLabelFont = MeterPlot.DEFAULT_LABEL_FONT; this.tickLabelPaint = Color.black; this.tickLabelFormat = NumberFormat.getInstance(); this.valueFont = MeterPlot.DEFAULT_VALUE_FONT; this.valuePaint = MeterPlot.DEFAULT_VALUE_PAINT; this.dialBackgroundPaint = MeterPlot.DEFAULT_DIAL_BACKGROUND_PAINT; this.intervals = new java.util.ArrayList(); setDataset(dataset); }
Example #2
Source File: DialPlot.java From SIMVA-SoS with Apache License 2.0 | 6 votes |
/** * Sets a dataset for the plot. * * @param index the dataset index. * @param dataset the dataset (<code>null</code> permitted). */ public void setDataset(int index, ValueDataset dataset) { ValueDataset existing = (ValueDataset) this.datasets.get(index); if (existing != null) { existing.removeChangeListener(this); } this.datasets.set(index, dataset); if (dataset != null) { dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #3
Source File: MeterPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Creates a new plot that displays the value from the supplied dataset. * * @param dataset the dataset (<code>null</code> permitted). */ public MeterPlot(ValueDataset dataset) { super(); this.shape = DialShape.CIRCLE; this.meterAngle = DEFAULT_METER_ANGLE; this.range = new Range(0.0, 100.0); this.tickSize = 10.0; this.tickPaint = Color.white; this.units = "Units"; this.needlePaint = MeterPlot.DEFAULT_NEEDLE_PAINT; this.tickLabelsVisible = true; this.tickLabelFont = MeterPlot.DEFAULT_LABEL_FONT; this.tickLabelPaint = Color.black; this.tickLabelFormat = NumberFormat.getInstance(); this.valueFont = MeterPlot.DEFAULT_VALUE_FONT; this.valuePaint = MeterPlot.DEFAULT_VALUE_PAINT; this.dialBackgroundPaint = MeterPlot.DEFAULT_DIAL_BACKGROUND_PAINT; this.intervals = new java.util.ArrayList(); setDataset(dataset); }
Example #4
Source File: MeterPlot.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and triggers a {@link PlotChangeEvent}. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list of // change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset, new DatasetChangeInfo()); // TODO: fill in change type datasetChanged(event); }
Example #5
Source File: DialPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Sets a dataset for the plot. * * @param index the dataset index. * @param dataset the dataset (<code>null</code> permitted). */ public void setDataset(int index, ValueDataset dataset) { ValueDataset existing = (ValueDataset) this.datasets.get(index); if (existing != null) { existing.removeChangeListener(this); } this.datasets.set(index, dataset); if (dataset != null) { dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #6
Source File: ThermometerPlot.java From ECG-Viewer with GNU General Public License v2.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and sends a {@link PlotChangeEvent} to all registered listeners. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #7
Source File: DialPlot.java From ccu-historian with GNU General Public License v3.0 | 6 votes |
/** * Creates a new instance of <code>DialPlot</code>. * * @param dataset the dataset (<code>null</code> permitted). */ public DialPlot(ValueDataset dataset) { this.background = null; this.cap = null; this.dialFrame = new ArcDialFrame(); this.datasets = new ObjectList(); if (dataset != null) { setDataset(dataset); } this.scales = new ObjectList(); this.datasetToScaleMap = new ObjectList(); this.layers = new java.util.ArrayList(); this.pointers = new java.util.ArrayList(); this.viewX = 0.0; this.viewY = 0.0; this.viewW = 1.0; this.viewH = 1.0; }
Example #8
Source File: MeterPlot.java From ccu-historian with GNU General Public License v3.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and triggers a {@link PlotChangeEvent}. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list of // change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #9
Source File: MeterPlot.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Creates a new plot that displays the value from the supplied dataset. * * @param dataset the dataset (<code>null</code> permitted). */ public MeterPlot(ValueDataset dataset) { super(); this.shape = DialShape.CIRCLE; this.meterAngle = DEFAULT_METER_ANGLE; this.range = new Range(0.0, 100.0); this.tickSize = 10.0; this.tickPaint = Color.white; this.units = "Units"; this.needlePaint = MeterPlot.DEFAULT_NEEDLE_PAINT; this.tickLabelsVisible = true; this.tickLabelFont = MeterPlot.DEFAULT_LABEL_FONT; this.tickLabelPaint = Color.black; this.tickLabelFormat = NumberFormat.getInstance(); this.valueFont = MeterPlot.DEFAULT_VALUE_FONT; this.valuePaint = MeterPlot.DEFAULT_VALUE_PAINT; this.dialBackgroundPaint = MeterPlot.DEFAULT_DIAL_BACKGROUND_PAINT; this.intervals = new java.util.ArrayList(); setDataset(dataset); }
Example #10
Source File: MeterPlot.java From ccu-historian with GNU General Public License v3.0 | 6 votes |
/** * Creates a new plot that displays the value from the supplied dataset. * * @param dataset the dataset (<code>null</code> permitted). */ public MeterPlot(ValueDataset dataset) { super(); this.shape = DialShape.CIRCLE; this.meterAngle = DEFAULT_METER_ANGLE; this.range = new Range(0.0, 100.0); this.tickSize = 10.0; this.tickPaint = Color.white; this.units = "Units"; this.needlePaint = MeterPlot.DEFAULT_NEEDLE_PAINT; this.tickLabelsVisible = true; this.tickLabelFont = MeterPlot.DEFAULT_LABEL_FONT; this.tickLabelPaint = Color.black; this.tickLabelFormat = NumberFormat.getInstance(); this.valueFont = MeterPlot.DEFAULT_VALUE_FONT; this.valuePaint = MeterPlot.DEFAULT_VALUE_PAINT; this.dialBackgroundPaint = MeterPlot.DEFAULT_DIAL_BACKGROUND_PAINT; this.intervals = new java.util.ArrayList(); setDataset(dataset); }
Example #11
Source File: ThermometerPlot.java From ccu-historian with GNU General Public License v3.0 | 6 votes |
/** * Creates a new thermometer plot, using default attributes where necessary. * * @param dataset the data set. */ public ThermometerPlot(ValueDataset dataset) { super(); this.padding = new RectangleInsets(UnitType.RELATIVE, 0.05, 0.05, 0.05, 0.05); this.dataset = dataset; if (dataset != null) { dataset.addChangeListener(this); } NumberAxis axis = new NumberAxis(null); axis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); axis.setAxisLineVisible(false); axis.setPlot(this); axis.addChangeListener(this); this.rangeAxis = axis; setAxisRange(); }
Example #12
Source File: ThermometerPlot.java From SIMVA-SoS with Apache License 2.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and sends a {@link PlotChangeEvent} to all registered listeners. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #13
Source File: MeterPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and triggers a {@link PlotChangeEvent}. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list of // change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #14
Source File: ThermometerPlot.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and sends a {@link PlotChangeEvent} to all registered listeners. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset, new DatasetChangeInfo()); // TODO: fill in change type datasetChanged(event); }
Example #15
Source File: ThermometerPlot.java From openstock with GNU General Public License v3.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and sends a {@link PlotChangeEvent} to all registered listeners. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #16
Source File: MeterPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Creates a new plot that displays the value from the supplied dataset. * * @param dataset the dataset (<code>null</code> permitted). */ public MeterPlot(ValueDataset dataset) { super(); this.shape = DialShape.CIRCLE; this.meterAngle = DEFAULT_METER_ANGLE; this.range = new Range(0.0, 100.0); this.tickSize = 10.0; this.tickPaint = Color.white; this.units = "Units"; this.needlePaint = MeterPlot.DEFAULT_NEEDLE_PAINT; this.tickLabelsVisible = true; this.tickLabelFont = MeterPlot.DEFAULT_LABEL_FONT; this.tickLabelPaint = Color.black; this.tickLabelFormat = NumberFormat.getInstance(); this.valueFont = MeterPlot.DEFAULT_VALUE_FONT; this.valuePaint = MeterPlot.DEFAULT_VALUE_PAINT; this.dialBackgroundPaint = MeterPlot.DEFAULT_DIAL_BACKGROUND_PAINT; this.intervals = new java.util.ArrayList(); setDataset(dataset); }
Example #17
Source File: ThermometerPlot.java From openstock with GNU General Public License v3.0 | 6 votes |
/** * Creates a new thermometer plot, using default attributes where necessary. * * @param dataset the data set. */ public ThermometerPlot(ValueDataset dataset) { super(); this.padding = new RectangleInsets(UnitType.RELATIVE, 0.05, 0.05, 0.05, 0.05); this.dataset = dataset; if (dataset != null) { dataset.addChangeListener(this); } NumberAxis axis = new NumberAxis(null); axis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); axis.setAxisLineVisible(false); axis.setPlot(this); axis.addChangeListener(this); this.rangeAxis = axis; setAxisRange(); }
Example #18
Source File: ThermometerPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and sends a {@link PlotChangeEvent} to all registered listeners. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #19
Source File: DialPlot.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Sets a dataset for the plot. * * @param index the dataset index. * @param dataset the dataset (<code>null</code> permitted). */ public void setDataset(int index, ValueDataset dataset) { ValueDataset existing = (ValueDataset) this.datasets.get(index); if (existing != null) { existing.removeChangeListener(this); } this.datasets.set(index, dataset); if (dataset != null) { dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset, new DatasetChangeInfo()); // TODO: fill in real change details datasetChanged(event); }
Example #20
Source File: MeterPlot.java From SIMVA-SoS with Apache License 2.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and triggers a {@link PlotChangeEvent}. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list of // change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #21
Source File: ThermometerPlot.java From opensim-gui with Apache License 2.0 | 6 votes |
/** * Creates a new thermometer plot, using default attributes where necessary. * * @param dataset the data set. */ public ThermometerPlot(ValueDataset dataset) { super(); this.padding = new RectangleInsets(UnitType.RELATIVE, 0.05, 0.05, 0.05, 0.05); this.dataset = dataset; if (dataset != null) { dataset.addChangeListener(this); } NumberAxis axis = new NumberAxis(null); axis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); axis.setAxisLineVisible(false); setRangeAxis(axis); setAxisRange(); }
Example #22
Source File: ThermometerPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Creates a new thermometer plot, using default attributes where necessary. * * @param dataset the data set. */ public ThermometerPlot(ValueDataset dataset) { super(); this.padding = new RectangleInsets(UnitType.RELATIVE, 0.05, 0.05, 0.05, 0.05); this.dataset = dataset; if (dataset != null) { dataset.addChangeListener(this); } NumberAxis axis = new NumberAxis(null); axis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); axis.setAxisLineVisible(false); axis.setPlot(this); axis.addChangeListener(this); this.rangeAxis = axis; setAxisRange(); }
Example #23
Source File: DialPlot.java From openstock with GNU General Public License v3.0 | 6 votes |
/** * Sets a dataset for the plot. * * @param index the dataset index. * @param dataset the dataset (<code>null</code> permitted). */ public void setDataset(int index, ValueDataset dataset) { ValueDataset existing = (ValueDataset) this.datasets.get(index); if (existing != null) { existing.removeChangeListener(this); } this.datasets.set(index, dataset); if (dataset != null) { dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #24
Source File: ThermometerPlot.java From opensim-gui with Apache License 2.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one. * * @param dataset the dataset (<code>null</code> permitted). */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #25
Source File: PanamaHitek_SingleDialChart.java From PanamaHitek_Arduino with GNU Lesser General Public License v3.0 | 6 votes |
public JFreeChart createStandardDialChart(String s, String s1, ValueDataset valuedataset, double d, double d1, double d2, int i) { DialPlot dialplot = new DialPlot(); dialplot.setDataset(valuedataset); dialplot.setDialFrame(new StandardDialFrame()); dialplot.setBackground(new DialBackground()); DialTextAnnotation dialtextannotation = new DialTextAnnotation(s1); dialtextannotation.setFont(new Font("Dialog", 1, 14)); dialtextannotation.setRadius(0.7D); dialplot.addLayer(dialtextannotation); DialValueIndicator dialvalueindicator = new DialValueIndicator(0); dialplot.addLayer(dialvalueindicator); StandardDialScale standarddialscale = new StandardDialScale(d, d1, -120D, -300D, 10D, 4); standarddialscale.setMajorTickIncrement(d2); standarddialscale.setMinorTickCount(i); standarddialscale.setTickRadius(0.88D); standarddialscale.setTickLabelOffset(0.15D); standarddialscale.setTickLabelFont(new Font("Dialog", 0, 14)); dialplot.addScale(0, standarddialscale); dialplot.addPointer(new org.jfree.chart.plot.dial.DialPointer.Pin()); DialCap dialcap = new DialCap(); dialplot.setCap(dialcap); return new JFreeChart(s, dialplot); }
Example #26
Source File: ThermometerPlot.java From buffer_bci with GNU General Public License v3.0 | 6 votes |
/** * Sets the dataset for the plot, replacing the existing dataset if there * is one, and sends a {@link PlotChangeEvent} to all registered listeners. * * @param dataset the dataset (<code>null</code> permitted). * * @see #getDataset() */ public void setDataset(ValueDataset dataset) { // if there is an existing dataset, remove the plot from the list // of change listeners... ValueDataset existing = this.dataset; if (existing != null) { existing.removeChangeListener(this); } // set the new dataset, and register the chart as a change listener... this.dataset = dataset; if (dataset != null) { setDatasetGroup(dataset.getGroup()); dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #27
Source File: DialPlot.java From ECG-Viewer with GNU General Public License v2.0 | 6 votes |
/** * Sets a dataset for the plot. * * @param index the dataset index. * @param dataset the dataset (<code>null</code> permitted). */ public void setDataset(int index, ValueDataset dataset) { ValueDataset existing = (ValueDataset) this.datasets.get(index); if (existing != null) { existing.removeChangeListener(this); } this.datasets.set(index, dataset); if (dataset != null) { dataset.addChangeListener(this); } // send a dataset change event to self... DatasetChangeEvent event = new DatasetChangeEvent(this, dataset); datasetChanged(event); }
Example #28
Source File: CompassPlot.java From ECG-Viewer with GNU General Public License v2.0 | 5 votes |
/** * Adds a dataset to the compass. * * @param dataset the new dataset (<code>null</code> ignored). * @param needle the needle (<code>null</code> permitted). */ public void addDataset(ValueDataset dataset, MeterNeedle needle) { if (dataset != null) { int i = this.datasets.length + 1; ValueDataset[] t = new ValueDataset[i]; MeterNeedle[] p = new MeterNeedle[i]; i = i - 2; for (; i >= 0; --i) { t[i] = this.datasets[i]; p[i] = this.seriesNeedle[i]; } i = this.datasets.length; t[i] = dataset; p[i] = ((needle != null) ? needle : p[i - 1]); ValueDataset[] a = this.datasets; MeterNeedle[] b = this.seriesNeedle; this.datasets = t; this.seriesNeedle = p; for (--i; i >= 0; --i) { a[i] = null; b[i] = null; } dataset.addChangeListener(this); } }
Example #29
Source File: CompassPlot.java From buffer_bci with GNU General Public License v3.0 | 5 votes |
/** * Constructs a new compass plot. * * @param dataset the dataset for the plot (<code>null</code> permitted). */ public CompassPlot(ValueDataset dataset) { super(); if (dataset != null) { this.datasets[0] = dataset; dataset.addChangeListener(this); } this.circle1 = new Ellipse2D.Double(); this.circle2 = new Ellipse2D.Double(); this.rect1 = new Rectangle2D.Double(); setSeriesNeedle(0); }
Example #30
Source File: CompassPlot.java From ECG-Viewer with GNU General Public License v2.0 | 5 votes |
/** * Constructs a new compass plot. * * @param dataset the dataset for the plot (<code>null</code> permitted). */ public CompassPlot(ValueDataset dataset) { super(); if (dataset != null) { this.datasets[0] = dataset; dataset.addChangeListener(this); } this.circle1 = new Ellipse2D.Double(); this.circle2 = new Ellipse2D.Double(); this.rect1 = new Rectangle2D.Double(); setSeriesNeedle(0); }