Skip to content
Erich Seifert edited this page Sep 21, 2017 · 2 revisions

How can I use a different shape for data points?

By default GRAL renders data points as rectangles of equal size (5×5 pixels). In order to use another shape you have to use the shape property of the point renderer to use arbitrary vector shapes.

Using an 8×8 circle:

PointRenderer pointRenderer = plot.getPointRenderers(data).get(0);
pointRenderer.setShape(new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0));

Using an 8×8 filled circle:

PointRenderer pointRenderer = plot.getPointRenderers(data).get(0);
Shape circle = new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0);
pointRenderer.setShape(circle);

Using an 8×8 circle with a 4×4 hole:

PointRenderer pointRenderer = plot.getPointRenderers(data).get(0);
Area circle = new Area(new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0));
circle.subtract(new Area(new Ellipse2D.Double(-2.0, -2.0, 4.0, 4.0)));
pointRenderer.setShape(circle);

Clone this wiki locally