public class ScatterRenderer extends AbstractCategoryItemRenderer implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable
MultiValueCategoryDataset
by plotting a shape for each value for
each given item in the dataset. The example shown here is generated by
the ScatterRendererDemo1.java
program included in the
JFreeChart Demo Collection:
DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, DEFAULT_PAINT, DEFAULT_SHAPE, DEFAULT_STROKE, DEFAULT_VALUE_LABEL_FONT, DEFAULT_VALUE_LABEL_PAINT, ZERO
Constructor and Description |
---|
ScatterRenderer()
Constructs a new renderer.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone()
Returns an independent copy of the renderer.
|
void |
drawItem(java.awt.Graphics2D g2,
CategoryItemRendererState state,
java.awt.geom.Rectangle2D dataArea,
CategoryPlot plot,
CategoryAxis domainAxis,
ValueAxis rangeAxis,
CategoryDataset dataset,
int row,
int column,
int pass)
Draw a single data item.
|
boolean |
equals(java.lang.Object obj)
Tests this renderer for equality with an arbitrary object.
|
Range |
findRangeBounds(CategoryDataset dataset)
Returns the range of values the renderer requires to display all the
items from the specified dataset.
|
boolean |
getBaseShapesFilled()
Returns the base 'shape filled' attribute.
|
boolean |
getDrawOutlines()
Returns
true if outlines should be drawn for shapes, and
false otherwise. |
double |
getItemMargin()
Returns the item margin, which is the gap between items within a
category (expressed as a percentage of the overall category width).
|
boolean |
getItemShapeFilled(int series,
int item)
Returns the flag used to control whether or not the shape for an item
is filled.
|
LegendItem |
getLegendItem(int datasetIndex,
int series)
Returns a legend item for a series.
|
boolean |
getSeriesShapesFilled(int series)
Returns the flag used to control whether or not the shapes for a series
are filled.
|
boolean |
getUseFillPaint()
Returns
true if the renderer should use the fill paint
setting to fill shapes, and false if it should just
use the regular paint. |
boolean |
getUseOutlinePaint()
Returns the flag that controls whether the outline paint is used for
shape outlines.
|
boolean |
getUseSeriesOffset()
Returns the flag that controls whether or not the x-position for each
data item is offset within the category according to the series.
|
void |
setBaseShapesFilled(boolean flag)
Sets the base 'shapes filled' flag and sends a
RendererChangeEvent to all registered listeners. |
void |
setDrawOutlines(boolean flag)
Sets the flag that controls whether outlines are drawn for
shapes, and sends a
RendererChangeEvent to all registered
listeners. |
void |
setItemMargin(double margin)
Sets the item margin, which is the gap between items within a category
(expressed as a percentage of the overall category width), and sends
a
RendererChangeEvent to all registered listeners. |
void |
setSeriesShapesFilled(int series,
boolean filled)
Sets the 'shapes filled' flag for a series and sends a
RendererChangeEvent to all registered listeners. |
void |
setSeriesShapesFilled(int series,
java.lang.Boolean filled)
Sets the 'shapes filled' flag for a series and sends a
RendererChangeEvent to all registered listeners. |
void |
setUseFillPaint(boolean flag)
Sets the flag that controls whether the fill paint is used to fill
shapes, and sends a
RendererChangeEvent to all
registered listeners. |
void |
setUseOutlinePaint(boolean use)
Sets the flag that controls whether the outline paint is used for shape
outlines, and sends a
RendererChangeEvent to all registered
listeners. |
void |
setUseSeriesOffset(boolean offset)
Sets the flag that controls whether or not the x-position for each
data item is offset within its category according to the series, and
sends a
RendererChangeEvent to all registered listeners. |
addEntity, addItemEntity, calculateDomainMarkerTextAnchorPoint, calculateRangeMarkerTextAnchorPoint, createState, drawBackground, drawDomainGridline, drawDomainMarker, drawItemLabel, drawOutline, drawRangeGridline, drawRangeLine, drawRangeMarker, findRangeBounds, getBaseItemLabelGenerator, getBaseItemURLGenerator, getBaseToolTipGenerator, getColumnCount, getDomainAxis, getDrawingSupplier, getItemLabelGenerator, getItemMiddle, getItemURLGenerator, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPassCount, getPlot, getRangeAxis, getRowCount, getSeriesItemLabelGenerator, getSeriesItemURLGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getToolTipGenerator, hashCode, initialise, setBaseItemLabelGenerator, setBaseItemURLGenerator, setBaseToolTipGenerator, setItemLabelGenerator, setItemURLGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesItemURLGenerator, setSeriesToolTipGenerator, setToolTipGenerator, updateCrosshairValues
addChangeListener, calculateLabelAnchorPoint, clearSeriesPaints, clearSeriesStrokes, fireChangeEvent, getAutoPopulateSeriesFillPaint, getAutoPopulateSeriesOutlinePaint, getAutoPopulateSeriesOutlineStroke, getAutoPopulateSeriesPaint, getAutoPopulateSeriesShape, getAutoPopulateSeriesStroke, getBaseCreateEntities, getBaseFillPaint, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseLegendShape, getBaseLegendTextFont, getBaseLegendTextPaint, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getCreateEntities, getDataBoundsIncludesVisibleSeriesOnly, getDefaultEntityRadius, getItemCreateEntity, getItemFillPaint, getItemLabelAnchorOffset, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendShape, getLegendTextFont, getLegendTextPaint, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, getTreatLegendShapeAsLine, hasListener, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupLegendShape, lookupLegendTextFont, lookupLegendTextPaint, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setBaseCreateEntities, setBaseCreateEntities, setBaseFillPaint, setBaseFillPaint, setBaseItemLabelFont, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseLegendShape, setBaseLegendTextFont, setBaseLegendTextPaint, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlinePaint, setBaseOutlineStroke, setBaseOutlineStroke, setBasePaint, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseShape, setBaseStroke, setBaseStroke, setCreateEntities, setCreateEntities, setDataBoundsIncludesVisibleSeriesOnly, setDefaultEntityRadius, setFillPaint, setFillPaint, setItemLabelAnchorOffset, setItemLabelFont, setItemLabelFont, setItemLabelPaint, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setLegendShape, setLegendTextFont, setLegendTextPaint, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlinePaint, setOutlineStroke, setOutlineStroke, setPaint, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setShape, setStroke, setStroke, setTreatLegendShapeAsLine
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
addChangeListener, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeChangeListener, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlineStroke, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseStroke, setItemLabelFont, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlineStroke, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setStroke
public ScatterRenderer()
public boolean getUseSeriesOffset()
setUseSeriesOffset(boolean)
public void setUseSeriesOffset(boolean offset)
RendererChangeEvent
to all registered listeners.offset
- the offset.getUseSeriesOffset()
public double getItemMargin()
BarRenderer
).setItemMargin(double)
,
getUseSeriesOffset()
public void setItemMargin(double margin)
RendererChangeEvent
to all registered listeners.margin
- the margin (0.0 <= margin < 1.0).getItemMargin()
,
getUseSeriesOffset()
public boolean getDrawOutlines()
true
if outlines should be drawn for shapes, and
false
otherwise.setDrawOutlines(boolean)
public void setDrawOutlines(boolean flag)
RendererChangeEvent
to all registered
listeners.
In some cases, shapes look better if they do NOT have an outline, but this flag allows you to set your own preference.
flag
- the flag.getDrawOutlines()
public boolean getUseOutlinePaint()
setUseOutlinePaint(boolean)
public void setUseOutlinePaint(boolean use)
RendererChangeEvent
to all registered
listeners.use
- the flag.getUseOutlinePaint()
public boolean getItemShapeFilled(int series, int item)
getSeriesShapesFilled
method. You can override this method
if you require different behaviour.series
- the series index (zero-based).item
- the item index (zero-based).public boolean getSeriesShapesFilled(int series)
series
- the series index (zero-based).public void setSeriesShapesFilled(int series, java.lang.Boolean filled)
RendererChangeEvent
to all registered listeners.series
- the series index (zero-based).filled
- the flag.public void setSeriesShapesFilled(int series, boolean filled)
RendererChangeEvent
to all registered listeners.series
- the series index (zero-based).filled
- the flag.public boolean getBaseShapesFilled()
public void setBaseShapesFilled(boolean flag)
RendererChangeEvent
to all registered listeners.flag
- the flag.public boolean getUseFillPaint()
true
if the renderer should use the fill paint
setting to fill shapes, and false
if it should just
use the regular paint.public void setUseFillPaint(boolean flag)
RendererChangeEvent
to all
registered listeners.flag
- the flag.public Range findRangeBounds(CategoryDataset dataset)
findRangeBounds
in interface CategoryItemRenderer
findRangeBounds
in class AbstractCategoryItemRenderer
dataset
- the dataset (null
permitted).null
if the dataset is
null
or empty).public void drawItem(java.awt.Graphics2D g2, CategoryItemRendererState state, java.awt.geom.Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset, int row, int column, int pass)
drawItem
in interface CategoryItemRenderer
g2
- the graphics device.state
- the renderer state.dataArea
- the area in which the data is drawn.plot
- the plot.domainAxis
- the domain axis.rangeAxis
- the range axis.dataset
- the dataset.row
- the row index (zero-based).column
- the column index (zero-based).pass
- the pass index.public LegendItem getLegendItem(int datasetIndex, int series)
getLegendItem
in interface CategoryItemRenderer
getLegendItem
in class AbstractCategoryItemRenderer
datasetIndex
- the dataset index (zero-based).series
- the series index (zero-based).AbstractCategoryItemRenderer.getLegendItems()
public boolean equals(java.lang.Object obj)
equals
in class AbstractCategoryItemRenderer
obj
- the object (null
permitted).public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in interface org.jfree.util.PublicCloneable
clone
in class AbstractCategoryItemRenderer
java.lang.CloneNotSupportedException
- should not happen.