Java Code Examples for org.jfree.chart.renderer.xy.XYLineAndShapeRenderer#setDrawOutlines()
The following examples show how to use
org.jfree.chart.renderer.xy.XYLineAndShapeRenderer#setDrawOutlines() .
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: UnitStatusPage.java From freeacs with MIT License | 6 votes |
/** * Gets the report chart image bytes. * * @param chartMaker the chart maker * @param chart the chart * @param width the width * @param height the height * @return the report chart image bytes * @throws Exception the exception */ public static byte[] getReportChartImageBytes( Chart<?> chartMaker, JFreeChart chart, int width, int height) throws Exception { if (chart == null && chartMaker != null) { chart = chartMaker.makeTimeChart(null, null, null, null); } else if (chart == null) { throw new IllegalArgumentException("Chart<?> and JFreeChart is NULL."); } if (chart.getPlot() instanceof XYPlot) { XYPlot plot = (XYPlot) chart.getPlot(); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer(); renderer.setDefaultShapesVisible(true); renderer.setDrawOutlines(true); renderer.setUseFillPaint(true); renderer.setDefaultFillPaint(Color.white); } ByteArrayOutputStream image = new ByteArrayOutputStream(); ChartUtils.writeChartAsPNG(image, chart, width, height); return image.toByteArray(); }
Example 2
Source File: SparkLine.java From Knowage-Server with GNU Affero General Public License v3.0 | 5 votes |
private void addPointSeries(TimeSeries series, XYPlot plot) { logger.debug("IN"); TimeSeries pointSerie = new TimeSeries("Point", Month.class); for(int i = 0; i < series.getItemCount(); i++) { pointSerie.add(series.getTimePeriod(i), series.getValue(i)); } final TimeSeriesCollection avgDs = new TimeSeriesCollection(pointSerie); XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(true, false) { public boolean getItemShapeVisible(int _series, int item) { return (true); } }; renderer.setSeriesPaint(2, Color.LIGHT_GRAY); renderer.setBaseShapesVisible(true); renderer.setBaseShapesFilled(true); renderer.setDrawOutlines(true); renderer.setUseFillPaint(true); renderer.setBaseFillPaint(Color.BLACK); renderer.setBaseOutlinePaint(Color.BLACK); renderer.setUseOutlinePaint(true); renderer.setSeriesShape(0, new Ellipse2D.Double(-2.0, -2.0, 4.0, 4.0)); plot.setDataset(2, avgDs); plot.setRenderer(2, renderer); logger.debug("OUT"); }
Example 3
Source File: ReportPage.java From freeacs with MIT License | 4 votes |
private void displayReportChartWithImageMap( Map<String, Object> root, int numberOfColumns, int averageLengthPrLegend, List<String> aggregation, HttpSession session) { StringWriter stringWriter = new StringWriter(); PrintWriter writer = new PrintWriter(stringWriter); boolean shouldZoom = true; switch (reportType) { case JOB: case UNIT: shouldZoom = false; break; default: break; } String clickablePointUrl = ""; if (shouldZoom || periodType.getSelected().isLongerThan(PeriodType.HOUR)) { clickablePointUrl = generateClickablePointUrl( periodType.getSelected(), reportType.getName(), method.getSelected(), optionalmethod.getSelected()); } XYPlot plot = (XYPlot) chart.getPlot(); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer(); XYURLGenerator urls = new ReportURLGenerator(clickablePointUrl, chart, aggregation); renderer.setURLGenerator(urls); XYSeriesLabelGenerator slg = new CustomXYSeriesLabelGenerator("javascript:xAPS.report.updateReport(%d);"); renderer.setLegendItemURLGenerator(slg); renderer.setDefaultShapesVisible(true); renderer.setDrawOutlines(true); renderer.setUseFillPaint(true); renderer.setDefaultFillPaint(Color.white); try { ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection()); ByteArrayOutputStream image = new ByteArrayOutputStream(); int chartWidth = 700 + 10 * averageLengthPrLegend * numberOfColumns + 35 * numberOfColumns; ChartUtils.writeChartAsPNG(image, chart, chartWidth, 400, info); session.setAttribute("JFreeChartPNG" + reportType.getName(), image.toByteArray()); ImageMapUtils.writeImageMap( writer, "chart" + reportType.getName(), info, arg0 -> " title=\"" + arg0 + "\" alt=\"" + arg0 + "\"", arg0 -> " href=\"" + arg0 + "\""); writer.println( "<img src=\"" + Page.REPORT.getUrl() + "&type=" + reportType.getName() + "&image=true&d=" + new Date().getTime() + "\" border=\"0\" usemap=\"#chart" + reportType.getName() + "\" id=\"ImageMapImg\" alt=\"ReportImage\"/>"); writer.close(); root.put("imagemap", stringWriter.toString()); } catch (IOException e) { e.printStackTrace(); } }
Example 4
Source File: NumberLineChart.java From EdgeSim with MIT License | 4 votes |
public NumberLineChart() { this.collection = this.getCollection(); initial(); this.chart = ChartFactory.createXYLineChart( null, "Request", "Hit Rate", collection, PlotOrientation.VERTICAL, true, true, false ); this.chart.getPlot().setBackgroundPaint(SystemColor.white); LegendTitle legend = chart.getLegend(); legend.setPosition(RectangleEdge.RIGHT); legend.setHorizontalAlignment(HorizontalAlignment.LEFT); XYPlot plot = (XYPlot) chart.getPlot(); NumberAxis numberAxisX = (NumberAxis) chart.getXYPlot().getDomainAxis(); numberAxisX.setTickUnit(new NumberTickUnit(500)); // numberAxisX.setAutoRangeMinimumSize(0.1); numberAxisX.setAutoRangeIncludesZero(true); numberAxisX.setAxisLineVisible(false); numberAxisX.setTickMarkInsideLength(4f); numberAxisX.setTickMarkOutsideLength(0); NumberAxis numberAxisY = (NumberAxis) chart.getXYPlot().getRangeAxis(); numberAxisY.setTickUnit(new NumberTickUnit(0.2)); numberAxisY.setRangeWithMargins(0,1); numberAxisY.setAutoRangeIncludesZero(true); numberAxisY.setAxisLineVisible(false); numberAxisY.setTickMarkInsideLength(4f); numberAxisY.setTickMarkOutsideLength(0); // ����Y������Ϊ�ٷֱ� numberAxisY.setNumberFormatOverride(NumberFormat.getPercentInstance()); XYItemRenderer xyitem = plot.getRenderer(); xyitem.setDefaultItemLabelsVisible(true); // ItemLabelsVisible(true); xyitem.setDefaultPositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT)); // xyitem.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT)); // xyitem.setBaseItemLabelFont(new Font("Dialog", 1, 12)); xyitem.setDefaultItemLabelFont(new Font("Dialog", 1, 12)); plot.setRenderer(xyitem); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer)plot.getRenderer(); renderer.setDefaultItemLabelsVisible(true); renderer.setDefaultShapesVisible(true); renderer.setDrawOutlines(true); renderer.setSeriesOutlineStroke(0, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(1, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(2, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(3, new BasicStroke(5F)); renderer.setSeriesPaint(0, Color.RED); renderer.setSeriesPaint(1, new Color(53,101,253)); renderer.setSeriesPaint(2, new Color(0,161,59));//����ɫ renderer.setSeriesPaint(3, new Color(148,103,189));//��ɫ renderer.setSeriesStroke(0, new BasicStroke(4.0F)); renderer.setSeriesStroke(1, new BasicStroke(4.0F)); renderer.setSeriesStroke(2, new BasicStroke(4.0F)); renderer.setSeriesStroke(3, new BasicStroke(4.0F)); renderer.setSeriesStroke(4, new BasicStroke(2.0F)); renderer.setSeriesStroke(5, new BasicStroke(2.0F)); this.chartFrame = new ChartFrame("Line Chart", chart); chartFrame.pack(); chartFrame.setSize(1600,1200); chartFrame.setLocation(300,200); chartFrame.setVisible(true); }
Example 5
Source File: BaseLineChart.java From EdgeSim with MIT License | 4 votes |
protected void generateLineChart(String xAisTitle, String yAisTitle, NumberTickUnit xAisSpace, NumberTickUnit yAisSpace, double yaisMinValue, double yAisMaxValue, XYSeriesCollection collection) { this.chart = ChartFactory.createXYLineChart(null, xAisTitle, yAisTitle, collection, PlotOrientation.VERTICAL, true, true, false); this.chart.getPlot().setBackgroundPaint(SystemColor.white); LegendTitle legend = chart.getLegend(); legend.setPosition(RectangleEdge.RIGHT); legend.setHorizontalAlignment(HorizontalAlignment.LEFT); XYPlot plot = (XYPlot) chart.getPlot(); NumberAxis numberAxisX = (NumberAxis) chart.getXYPlot().getDomainAxis(); numberAxisX.setAutoRangeIncludesZero(false); numberAxisX.setTickUnit(xAisSpace); numberAxisX.setAxisLineVisible(false); numberAxisX.setTickMarkInsideLength(4f); numberAxisX.setTickMarkOutsideLength(0); NumberAxis numberAxisY = (NumberAxis) chart.getXYPlot().getRangeAxis(); numberAxisY.setTickUnit(yAisSpace); numberAxisY.setRangeWithMargins(yaisMinValue, yAisMaxValue); numberAxisY.setAutoRangeIncludesZero(true); numberAxisY.setAxisLineVisible(false); numberAxisY.setTickMarkInsideLength(4f); numberAxisY.setTickMarkOutsideLength(0); numberAxisY.setNumberFormatOverride(NumberFormat.getNumberInstance()); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot .getRenderer(); // renderer.setBaseItemLabelsVisible(true); renderer.setDefaultItemLabelsVisible(true); renderer.setDefaultShapesVisible(true); // renderer.setBaseShapesVisible(true); renderer.setDrawOutlines(true); renderer.setSeriesOutlineStroke(0, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(1, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(2, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(3, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(4, new BasicStroke(5F)); renderer.setSeriesPaint(0, Color.RED); renderer.setSeriesPaint(1, Color.BLUE); renderer.setSeriesPaint(2, new Color(255, 125, 11)); renderer.setSeriesPaint(3, new Color(0, 161, 59)); renderer.setSeriesPaint(4, new Color(148, 103, 189)); renderer.setSeriesStroke(0, new BasicStroke(4.0F)); renderer.setSeriesStroke(1, new BasicStroke(4.0F)); renderer.setSeriesStroke(2, new BasicStroke(4.0F)); renderer.setSeriesStroke(3, new BasicStroke(4.0F)); renderer.setSeriesStroke(4, new BasicStroke(2.0F)); renderer.setSeriesStroke(5, new BasicStroke(2.0F)); // renderer.setUseFillPaint(true); this.chartFrame = new ChartFrame("Line Chart", chart); chartFrame.pack(); chartFrame.setSize(800, 600); chartFrame.setLocation(300, 200); chartFrame.setVisible(true); }
Example 6
Source File: TrafficLoadLineChart.java From EdgeSim with MIT License | 4 votes |
public TrafficLoadLineChart() { this.collection = this.getCollection(); initial(); this.chart = ChartFactory.createXYLineChart( null, "Time Slice", "Traffic Load(100GB)", collection, PlotOrientation.VERTICAL, true, true, false ); this.chart.getPlot().setBackgroundPaint(SystemColor.white); LegendTitle legend = chart.getLegend(); legend.setPosition(RectangleEdge.RIGHT); legend.setHorizontalAlignment(HorizontalAlignment.LEFT); XYPlot plot = (XYPlot) chart.getPlot(); NumberAxis numberAxisX = (NumberAxis) chart.getXYPlot().getDomainAxis(); numberAxisX.setAutoRangeIncludesZero(false); numberAxisX.setAutoRangeMinimumSize(0.1); numberAxisX.setAxisLineVisible(false); numberAxisX.setTickMarkInsideLength(4f); numberAxisX.setTickMarkOutsideLength(0); NumberAxis numberAxisY = (NumberAxis) chart.getXYPlot().getRangeAxis(); numberAxisY.setTickUnit(new NumberTickUnit(5)); numberAxisY.setRangeWithMargins(0,40); numberAxisY.setAutoRangeIncludesZero(true); numberAxisY.setAxisLineVisible(false); numberAxisY.setTickMarkInsideLength(4f); numberAxisY.setTickMarkOutsideLength(0); numberAxisY.setNumberFormatOverride(NumberFormat.getNumberInstance()); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer)plot.getRenderer(); renderer.setDefaultItemLabelsVisible(true); renderer.setDefaultShapesVisible(true); renderer.setDrawOutlines(true); renderer.setSeriesOutlineStroke(0, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(1, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(2, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(3, new BasicStroke(5F)); renderer.setSeriesOutlineStroke(4, new BasicStroke(5F)); renderer.setSeriesPaint(1, Color.RED); renderer.setSeriesPaint(2, new Color(53,101,253)); renderer.setSeriesPaint(3, new Color(0,161,59));//����ɫ renderer.setSeriesPaint(4, new Color(148,103,189));//��ɫ renderer.setSeriesPaint(0, new Color(255,125,11));//�ٻ�ɫ renderer.setSeriesStroke(0, new BasicStroke(4.0F)); renderer.setSeriesStroke(1, new BasicStroke(4.0F)); renderer.setSeriesStroke(2, new BasicStroke(4.0F)); renderer.setSeriesStroke(3, new BasicStroke(4.0F)); renderer.setSeriesStroke(4, new BasicStroke(2.0F)); renderer.setSeriesStroke(5, new BasicStroke(2.0F)); // renderer.setUseFillPaint(true); this.chartFrame = new ChartFrame("Line Chart", chart); chartFrame.pack(); chartFrame.setSize(1600,1200); chartFrame.setLocation(300,200); chartFrame.setVisible(true); }
Example 7
Source File: SparkLine.java From Knowage-Server with GNU Affero General Public License v3.0 | 4 votes |
private void addMarker(int index, double value, final Color color, float stoke, XYPlot plot) { logger.debug("IN"); TimeSeries markerSeries = new TimeSeries("Marker" + index, Month.class); for (Iterator iterator = yearsDefined.iterator(); iterator.hasNext();) { String currentYear = (String) iterator.next(); boolean stop=false; for(int i = 1; i < 13 && stop==false; i++) { if(!(currentYear.equalsIgnoreCase(yearsDefined.first()) && i<firstMonth.getMonth())){ markerSeries.add(new Month(i, Integer.valueOf(currentYear).intValue()), value); } if(currentYear.equalsIgnoreCase(lastYear) && i>=lastMonth.getMonth()){ stop=true; } } } final TimeSeriesCollection dataset = new TimeSeriesCollection(markerSeries); XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(true, false) { public boolean getItemShapeVisible(int _series, int item) { return (false); } public Paint getItemPaint(int row, int column) { return color; } }; renderer.setBaseStroke(new BasicStroke(stoke, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)); renderer.setBaseShapesVisible(true); renderer.setBaseShapesFilled(true); renderer.setDrawOutlines(true); renderer.setUseFillPaint(true); renderer.setBaseFillPaint(Color.GRAY); renderer.setBaseOutlinePaint(Color.BLACK); renderer.setUseOutlinePaint(true); plot.setDataset(index, dataset); plot.setRenderer(index, renderer); logger.debug("OUT"); }
Example 8
Source File: MsSpectrumPlotWindowController.java From old-mzmine3 with GNU General Public License v2.0 | 4 votes |
private void configureRenderer(MsSpectrumDataSet dataset, int datasetIndex) { final MsSpectrumType renderingType = dataset.getRenderingType(); final XYPlot plot = chartNode.getChart().getXYPlot(); // Set renderer AbstractXYItemRenderer newRenderer; switch (renderingType) { case PROFILE: case THRESHOLDED: XYLineAndShapeRenderer newLineRenderer = new XYLineAndShapeRenderer(); final int lineThickness = dataset.getLineThickness(); newLineRenderer.setBaseShape(new Ellipse2D.Double(-2 * lineThickness, -2 * lineThickness, 4 * lineThickness + 1, 4 * lineThickness + 1)); newLineRenderer.setBaseShapesFilled(true); newLineRenderer.setBaseShapesVisible(dataset.getShowDataPoints()); newLineRenderer.setDrawOutlines(false); Stroke baseStroke = new BasicStroke(lineThickness); newLineRenderer.setBaseStroke(baseStroke); newRenderer = newLineRenderer; break; case CENTROIDED: default: XYBarRenderer newBarRenderer = new XYBarRenderer(); // Avoid gradients newBarRenderer.setBarPainter(new StandardXYBarPainter()); newBarRenderer.setShadowVisible(false); newRenderer = newBarRenderer; break; } // Set tooltips for legend newRenderer.setLegendItemToolTipGenerator((ds, series) -> { if (ds instanceof MsSpectrumDataSet) { return ((MsSpectrumDataSet) ds).getDescription(); } else return null; }); // Set color Color baseColor = dataset.getColor(); newRenderer.setBasePaint(JavaFXUtil.convertColorToAWT(baseColor)); // Set label generator XYItemLabelGenerator intelligentLabelGenerator = new IntelligentItemLabelGenerator(chartNode, 100, dataset); newRenderer.setBaseItemLabelGenerator(intelligentLabelGenerator); newRenderer.setBaseItemLabelPaint(JavaFXUtil.convertColorToAWT(labelsColor)); newRenderer.setBaseItemLabelsVisible(itemLabelsVisible.get()); // Set tooltip generator newRenderer.setBaseToolTipGenerator(dataset); plot.setRenderer(datasetIndex, newRenderer); }
Example 9
Source File: ChromatogramPlotWindowController.java From old-mzmine3 with GNU General Public License v2.0 | 4 votes |
private void configureRenderer(ChromatogramPlotDataSet dataset, int datasetIndex) { final XYPlot plot = chartNode.getChart().getXYPlot(); XYLineAndShapeRenderer newRenderer = new XYLineAndShapeRenderer(); final int lineThickness = dataset.getLineThickness(); newRenderer.setBaseShape(new Ellipse2D.Double(-2 * lineThickness, -2 * lineThickness, 4 * lineThickness + 1, 4 * lineThickness + 1)); newRenderer.setBaseShapesFilled(true); newRenderer.setBaseShapesVisible(dataset.getShowDataPoints()); newRenderer.setDrawOutlines(false); Stroke baseStroke = new BasicStroke(lineThickness); newRenderer.setBaseStroke(baseStroke); // Set tooltips for legend newRenderer.setLegendItemToolTipGenerator((ds, series) -> { if (ds instanceof ChromatogramPlotDataSet) { return ((ChromatogramPlotDataSet) ds).getDescription(); } else return null; }); // Set color Color baseColor = dataset.getColor(); newRenderer.setBasePaint(JavaFXUtil.convertColorToAWT(baseColor)); // Set label generator XYItemLabelGenerator intelligentLabelGenerator = new IntelligentItemLabelGenerator(chartNode, 100, dataset); newRenderer.setBaseItemLabelGenerator(intelligentLabelGenerator); newRenderer.setBaseItemLabelPaint(JavaFXUtil.convertColorToAWT(labelsColor)); newRenderer.setBaseItemLabelsVisible(itemLabelsVisible.get()); newRenderer.setBaseItemLabelsVisible(true); // Set tooltip generator newRenderer.setBaseToolTipGenerator(dataset); plot.setRenderer(datasetIndex, newRenderer); }
Example 10
Source File: XYLineAndShapeRendererTests.java From astor with GNU General Public License v2.0 | 4 votes |
/** * Test that the equals() method distinguishes all fields. */ public void testEquals() { XYLineAndShapeRenderer r1 = new XYLineAndShapeRenderer(); XYLineAndShapeRenderer r2 = new XYLineAndShapeRenderer(); assertEquals(r1, r2); assertEquals(r2, r1); r1.setSeriesLinesVisible(3, true); assertFalse(r1.equals(r2)); r2.setSeriesLinesVisible(3, true); assertTrue(r1.equals(r2)); r1.setBaseLinesVisible(false); assertFalse(r1.equals(r2)); r2.setBaseLinesVisible(false); assertTrue(r1.equals(r2)); r1.setLegendLine(new Line2D.Double(1.0, 2.0, 3.0, 4.0)); assertFalse(r1.equals(r2)); r2.setLegendLine(new Line2D.Double(1.0, 2.0, 3.0, 4.0)); assertTrue(r1.equals(r2)); r1.setSeriesShapesVisible(3, true); assertFalse(r1.equals(r2)); r2.setSeriesShapesVisible(3, true); assertTrue(r1.equals(r2)); r1.setBaseShapesVisible(false); assertFalse(r1.equals(r2)); r2.setBaseShapesVisible(false); assertTrue(r1.equals(r2)); r1.setSeriesShapesFilled(3, true); assertFalse(r1.equals(r2)); r2.setSeriesShapesFilled(3, true); assertTrue(r1.equals(r2)); r1.setBaseShapesFilled(false); assertFalse(r1.equals(r2)); r2.setBaseShapesFilled(false); assertTrue(r1.equals(r2)); r1.setDrawOutlines(!r1.getDrawOutlines()); assertFalse(r1.equals(r2)); r2.setDrawOutlines(r1.getDrawOutlines()); assertTrue(r1.equals(r2)); r1.setUseOutlinePaint(true); assertFalse(r1.equals(r2)); r2.setUseOutlinePaint(true); assertTrue(r1.equals(r2)); r1.setUseFillPaint(true); assertFalse(r1.equals(r2)); r2.setUseFillPaint(true); assertTrue(r1.equals(r2)); r1.setDrawSeriesLineAsPath(true); assertFalse(r1.equals(r2)); r2.setDrawSeriesLineAsPath(true); assertTrue(r1.equals(r2)); }
Example 11
Source File: XYLineAndShapeRendererTests.java From astor with GNU General Public License v2.0 | 4 votes |
/** * Test that the equals() method distinguishes all fields. */ public void testEquals() { XYLineAndShapeRenderer r1 = new XYLineAndShapeRenderer(); XYLineAndShapeRenderer r2 = new XYLineAndShapeRenderer(); assertEquals(r1, r2); assertEquals(r2, r1); r1.setSeriesLinesVisible(3, true); assertFalse(r1.equals(r2)); r2.setSeriesLinesVisible(3, true); assertTrue(r1.equals(r2)); r1.setBaseLinesVisible(false); assertFalse(r1.equals(r2)); r2.setBaseLinesVisible(false); assertTrue(r1.equals(r2)); r1.setLegendLine(new Line2D.Double(1.0, 2.0, 3.0, 4.0)); assertFalse(r1.equals(r2)); r2.setLegendLine(new Line2D.Double(1.0, 2.0, 3.0, 4.0)); assertTrue(r1.equals(r2)); r1.setSeriesShapesVisible(3, true); assertFalse(r1.equals(r2)); r2.setSeriesShapesVisible(3, true); assertTrue(r1.equals(r2)); r1.setBaseShapesVisible(false); assertFalse(r1.equals(r2)); r2.setBaseShapesVisible(false); assertTrue(r1.equals(r2)); r1.setSeriesShapesFilled(3, true); assertFalse(r1.equals(r2)); r2.setSeriesShapesFilled(3, true); assertTrue(r1.equals(r2)); r1.setBaseShapesFilled(false); assertFalse(r1.equals(r2)); r2.setBaseShapesFilled(false); assertTrue(r1.equals(r2)); r1.setDrawOutlines(!r1.getDrawOutlines()); assertFalse(r1.equals(r2)); r2.setDrawOutlines(r1.getDrawOutlines()); assertTrue(r1.equals(r2)); r1.setUseOutlinePaint(true); assertFalse(r1.equals(r2)); r2.setUseOutlinePaint(true); assertTrue(r1.equals(r2)); r1.setUseFillPaint(true); assertFalse(r1.equals(r2)); r2.setUseFillPaint(true); assertTrue(r1.equals(r2)); r1.setDrawSeriesLineAsPath(true); assertFalse(r1.equals(r2)); r2.setDrawSeriesLineAsPath(true); assertTrue(r1.equals(r2)); }