Example usage for org.jfree.chart.renderer.xy XYItemRenderer setSeriesOutlinePaint

List of usage examples for org.jfree.chart.renderer.xy XYItemRenderer setSeriesOutlinePaint

Introduction

In this page you can find the example usage for org.jfree.chart.renderer.xy XYItemRenderer setSeriesOutlinePaint.

Prototype

public void setSeriesOutlinePaint(int series, Paint paint);

Source Link

Document

Sets the paint used for a series outline and sends a RendererChangeEvent to all registered listeners.

Usage

From source file:com.hmsinc.epicenter.webapp.chart.ChartService.java

/**
 * @param chart// w w  w.  j av  a  2 s .com
 */
private static void configureRenderer(final JFreeChart chart, final AbstractChart adapter) {

    if (ChartType.BAR.equals(adapter.getType())) {

        chart.getCategoryPlot().setRenderer(getBarRenderer(adapter));

    } else if (ChartType.TIMESERIES_BAR.equals(adapter.getType())) {

        chart.getXYPlot().setRenderer(getTimeSeriesBarRenderer(adapter));

    } else if (ChartType.MOUNTAIN.equals(adapter.getType())) {

        chart.getXYPlot().setRenderer(getMountainRenderer(adapter));
        chart.getXYPlot().setSeriesRenderingOrder(SeriesRenderingOrder.FORWARD);

    } else {

        final XYItemRenderer renderer = chart.getXYPlot().getRenderer();

        for (int i = 0; i < adapter.getColors().size(); i++) {

            final Color c = adapter.getColors().get(i);
            renderer.setSeriesPaint(i, c);
            renderer.setSeriesOutlinePaint(i, c.brighter());
        }

        for (int i = 0; i < adapter.getStrokes().size(); i++) {
            renderer.setSeriesStroke(i, adapter.getStrokes().get(i));
        }

        if (renderer instanceof XYLineAndShapeRenderer) {
            ((XYLineAndShapeRenderer) renderer).setDrawSeriesLineAsPath(true);
        }

    }

}

From source file:org.locationtech.udig.processingtoolbox.tools.BubbleChartDialog.java

private void updateChart(SimpleFeatureCollection features, String xField, String yField, String sizeField) {
    // 1. Create a single plot containing both the scatter and line
    XYPlot plot = new XYPlot();
    plot.setOrientation(PlotOrientation.VERTICAL);
    plot.setBackgroundPaint(java.awt.Color.WHITE);
    plot.setDomainPannable(false);//from ww  w .  j  ava2 s. c  o  m
    plot.setRangePannable(false);
    plot.setSeriesRenderingOrder(SeriesRenderingOrder.FORWARD);

    plot.setDomainCrosshairVisible(false);
    plot.setRangeCrosshairVisible(false);
    plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
    plot.setForegroundAlpha(0.75f);

    // 2. Setup Scatter plot
    // Create the bubble chart data, renderer, and axis
    int fontStyle = java.awt.Font.BOLD;
    FontData fontData = getShell().getDisplay().getSystemFont().getFontData()[0];
    NumberAxis xPlotAxis = new NumberAxis(xField); // Independent variable
    xPlotAxis.setLabelFont(new Font(fontData.getName(), fontStyle, 12));
    xPlotAxis.setTickLabelFont(new Font(fontData.getName(), fontStyle, 10));

    NumberAxis yPlotAxis = new NumberAxis(yField); // Dependent variable
    yPlotAxis.setLabelFont(new Font(fontData.getName(), fontStyle, 12));
    yPlotAxis.setTickLabelFont(new Font(fontData.getName(), fontStyle, 10));

    XYItemRenderer plotRenderer = new XYBubbleRenderer(XYBubbleRenderer.SCALE_ON_RANGE_AXIS);
    plotRenderer.setSeriesPaint(0, java.awt.Color.ORANGE); // dot
    plotRenderer.setBaseItemLabelGenerator(new BubbleXYItemLabelGenerator());
    plotRenderer.setBaseToolTipGenerator(new StandardXYZToolTipGenerator());
    plotRenderer
            .setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.CENTER, TextAnchor.CENTER));

    // Set the bubble chart data, renderer, and axis into plot
    plot.setDataset(0, getBubbleChartData(features, xField, yField, sizeField));

    xPlotAxis.setAutoRangeIncludesZero(false);
    xPlotAxis.setAutoRange(false);
    double differUpper = minMaxVisitor.getMaxX() - minMaxVisitor.getAverageX();
    double differLower = minMaxVisitor.getAverageX() - minMaxVisitor.getMinX();
    double gap = Math.abs(differUpper - differLower);
    if (differUpper > differLower) {
        xPlotAxis.setRange(minMaxVisitor.getMinX() - gap, minMaxVisitor.getMaxX());
    } else {
        xPlotAxis.setRange(minMaxVisitor.getMinX(), minMaxVisitor.getMaxX() + gap);
    }

    yPlotAxis.setAutoRangeIncludesZero(false);
    yPlotAxis.setAutoRange(false);
    differUpper = minMaxVisitor.getMaxY() - minMaxVisitor.getAverageY();
    differLower = minMaxVisitor.getAverageY() - minMaxVisitor.getMinY();
    gap = Math.abs(differUpper - differLower);
    if (differUpper > differLower) {
        yPlotAxis.setRange(minMaxVisitor.getMinY() - gap, minMaxVisitor.getMaxY());
    } else {
        yPlotAxis.setRange(minMaxVisitor.getMinY(), minMaxVisitor.getMaxY() + gap);
    }

    plot.setRenderer(0, plotRenderer);
    plot.setDomainAxis(0, xPlotAxis);
    plot.setRangeAxis(0, yPlotAxis);

    // Map the scatter to the first Domain and first Range
    plot.mapDatasetToDomainAxis(0, 0);
    plot.mapDatasetToRangeAxis(0, 0);

    // 3. Setup line
    // Create the line data, renderer, and axis
    XYItemRenderer lineRenderer = new XYLineAndShapeRenderer(true, false); // Lines only
    lineRenderer.setSeriesPaint(0, java.awt.Color.GRAY);
    lineRenderer.setSeriesPaint(1, java.awt.Color.GRAY);
    lineRenderer.setSeriesPaint(2, java.awt.Color.GRAY);

    // Set the line data, renderer, and axis into plot
    NumberAxis xLineAxis = new NumberAxis(EMPTY);
    xLineAxis.setTickMarksVisible(false);
    xLineAxis.setTickLabelsVisible(false);

    NumberAxis yLineAxis = new NumberAxis(EMPTY);
    yLineAxis.setTickMarksVisible(false);
    yLineAxis.setTickLabelsVisible(false);

    XYSeriesCollection lineDataset = new XYSeriesCollection();

    // AverageY
    XYSeries horizontal = new XYSeries("AverageY"); //$NON-NLS-1$
    horizontal.add(xPlotAxis.getRange().getLowerBound(), minMaxVisitor.getAverageY());
    horizontal.add(xPlotAxis.getRange().getUpperBound(), minMaxVisitor.getAverageY());
    lineDataset.addSeries(horizontal);

    // AverageX
    XYSeries vertical = new XYSeries("AverageX"); //$NON-NLS-1$
    vertical.add(minMaxVisitor.getAverageX(), yPlotAxis.getRange().getLowerBound());
    vertical.add(minMaxVisitor.getAverageX(), yPlotAxis.getRange().getUpperBound());
    lineDataset.addSeries(vertical);

    plot.setDataset(1, lineDataset);
    plot.setRenderer(1, lineRenderer);
    plot.setDomainAxis(1, xLineAxis);
    plot.setRangeAxis(1, yLineAxis);

    // Map the line to the second Domain and second Range
    plot.mapDatasetToDomainAxis(1, 0);
    plot.mapDatasetToRangeAxis(1, 0);

    // 4. Setup Selection
    NumberAxis xSelectionAxis = new NumberAxis(EMPTY);
    xSelectionAxis.setTickMarksVisible(false);
    xSelectionAxis.setTickLabelsVisible(false);

    NumberAxis ySelectionAxis = new NumberAxis(EMPTY);
    ySelectionAxis.setTickMarksVisible(false);
    ySelectionAxis.setTickLabelsVisible(false);

    XYItemRenderer selectionRenderer = new XYBubbleRenderer(XYBubbleRenderer.SCALE_ON_RANGE_AXIS);
    selectionRenderer.setSeriesPaint(0, java.awt.Color.RED); // dot
    selectionRenderer.setSeriesOutlinePaint(0, java.awt.Color.RED);

    plot.setDataset(2, new DefaultXYZDataset2());
    plot.setRenderer(2, selectionRenderer);
    plot.setDomainAxis(2, xSelectionAxis);
    plot.setRangeAxis(2, ySelectionAxis);

    // Map the scatter to the second Domain and second Range
    plot.mapDatasetToDomainAxis(2, 0);
    plot.mapDatasetToRangeAxis(2, 0);

    // 5. Finally, Create the chart with the plot and a legend
    java.awt.Font titleFont = new Font(fontData.getName(), fontStyle, 20);
    JFreeChart chart = new JFreeChart(EMPTY, titleFont, plot, false);
    chart.setBackgroundPaint(java.awt.Color.WHITE);
    chart.setBorderVisible(false);

    chartComposite.setChart(chart);
    chartComposite.forceRedraw();
}

From source file:net.sf.fspdfs.chartthemes.spring.AegeanChartTheme.java

/**
 *
 *//*from  w  w  w.j av  a 2s  .  co  m*/
protected void configurePlot(Plot plot, JRChartPlot jrPlot) {

    super.configurePlot(plot, jrPlot);

    if (plot instanceof CategoryPlot) {
        CategoryPlot categoryPlot = (CategoryPlot) plot;
        CategoryItemRenderer categoryRenderer = categoryPlot.getRenderer();
        CategoryDataset categoryDataset = categoryPlot.getDataset();
        if (categoryDataset != null) {
            for (int i = 0; i < categoryDataset.getRowCount(); i++) {
                categoryRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }
        }
        categoryPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217);
        categoryPlot.setRangeGridlineStroke(new BasicStroke(0.5f));
        categoryPlot.setDomainGridlinesVisible(false);
        categoryPlot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.UP_45);
    } else if (plot instanceof XYPlot) {
        XYPlot xyPlot = (XYPlot) plot;
        XYItemRenderer xyItemRenderer = xyPlot.getRenderer();
        XYDataset xyDataset = xyPlot.getDataset();
        if (xyDataset != null) {
            for (int i = 0; i < xyDataset.getSeriesCount(); i++) {
                xyItemRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }
        }
        xyPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217);
        xyPlot.setRangeGridlineStroke(new BasicStroke(0.5f));
        xyPlot.setDomainGridlinesVisible(false);
        xyPlot.setRangeZeroBaselineVisible(true);
    }
}

From source file:net.sf.jasperreports.chartthemes.spring.AegeanChartTheme.java

@Override
protected void configurePlot(Plot plot, JRChartPlot jrPlot) {

    super.configurePlot(plot, jrPlot);

    if (plot instanceof CategoryPlot) {
        CategoryPlot categoryPlot = (CategoryPlot) plot;
        CategoryItemRenderer categoryRenderer = categoryPlot.getRenderer();
        CategoryDataset categoryDataset = categoryPlot.getDataset();
        if (categoryDataset != null) {
            for (int i = 0; i < categoryDataset.getRowCount(); i++) {
                categoryRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }//from w w  w  . jav a 2  s .  co  m
        }
        categoryPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217);
        categoryPlot.setRangeGridlineStroke(new BasicStroke(0.5f));
        categoryPlot.setDomainGridlinesVisible(false);
        categoryPlot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.UP_45);
    } else if (plot instanceof XYPlot) {
        XYPlot xyPlot = (XYPlot) plot;
        XYItemRenderer xyItemRenderer = xyPlot.getRenderer();
        XYDataset xyDataset = xyPlot.getDataset();
        if (xyDataset != null) {
            for (int i = 0; i < xyDataset.getSeriesCount(); i++) {
                xyItemRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }
        }
        xyPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217);
        xyPlot.setRangeGridlineStroke(new BasicStroke(0.5f));
        xyPlot.setDomainGridlinesVisible(false);
        xyPlot.setRangeZeroBaselineVisible(true);
    }
}

From source file:org.jivesoftware.openfire.reporting.graph.GraphEngine.java

/**
 * Generates a Chart.//  ww  w .  j  a v  a 2s.  c om
 *
 * @param title        the title of the chart.
 * @param data         the data to use in the chart.
 * @param xAxis        the variables to use on the xAxis.
 * @param yAxis        the variables to use on the yAxis.
 * @param orientation  the orientation
 * @param itemRenderer the type of renderer to use.
 * @return the generated chart.
 */
private JFreeChart createChart(String title, XYDataset data, ValueAxis xAxis, ValueAxis yAxis,
        PlotOrientation orientation, XYItemRenderer itemRenderer, GraphDefinition def) {
    int seriesCount = data.getSeriesCount();
    for (int i = 0; i < seriesCount; i++) {
        itemRenderer.setSeriesPaint(i, def.getInlineColor(i));
        itemRenderer.setSeriesOutlinePaint(i, def.getOutlineColor(i));
    }

    XYPlot plot = new XYPlot(data, xAxis, yAxis, null);
    plot.setOrientation(orientation);
    plot.setRenderer(itemRenderer);

    return createChart(title, plot);
}

From source file:net.sf.fspdfs.chartthemes.spring.EyeCandySixtiesChartTheme.java

/**
 *
 *//* w ww. j  a v a2 s  .  c  om*/
protected void configurePlot(Plot plot, JRChartPlot jrPlot) {
    super.configurePlot(plot, jrPlot);
    if (plot instanceof CategoryPlot) {
        CategoryPlot categoryPlot = (CategoryPlot) plot;
        CategoryItemRenderer categoryRenderer = categoryPlot.getRenderer();
        CategoryDataset categoryDataset = categoryPlot.getDataset();
        if (categoryDataset != null) {
            for (int i = 0; i < categoryDataset.getRowCount(); i++) {
                categoryRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }
        }
        categoryPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_134);
        categoryPlot.setRangeGridlineStroke(new BasicStroke(1f));
        categoryPlot.setDomainGridlinesVisible(false);

    } else if (plot instanceof XYPlot) {
        XYPlot xyPlot = (XYPlot) plot;
        XYDataset xyDataset = xyPlot.getDataset();
        if (xyDataset != null) {
            XYItemRenderer xyItemRenderer = xyPlot.getRenderer();
            for (int i = 0; i < xyDataset.getSeriesCount(); i++) {
                xyItemRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }
        }
        xyPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_134);
        xyPlot.setRangeGridlineStroke(new BasicStroke(1f));
        xyPlot.setDomainGridlinesVisible(false);

        xyPlot.setRangeZeroBaselineVisible(true);

    }
}

From source file:net.sf.jasperreports.chartthemes.spring.EyeCandySixtiesChartTheme.java

@Override
protected void configurePlot(Plot plot, JRChartPlot jrPlot) {
    super.configurePlot(plot, jrPlot);
    if (plot instanceof CategoryPlot) {
        CategoryPlot categoryPlot = (CategoryPlot) plot;
        CategoryItemRenderer categoryRenderer = categoryPlot.getRenderer();
        CategoryDataset categoryDataset = categoryPlot.getDataset();
        if (categoryDataset != null) {
            for (int i = 0; i < categoryDataset.getRowCount(); i++) {
                categoryRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }/*w w w  .  ja  va  2s.  co m*/
        }
        categoryPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_134);
        categoryPlot.setRangeGridlineStroke(new BasicStroke(1f));
        categoryPlot.setDomainGridlinesVisible(false);

    } else if (plot instanceof XYPlot) {
        XYPlot xyPlot = (XYPlot) plot;
        XYDataset xyDataset = xyPlot.getDataset();
        if (xyDataset != null) {
            XYItemRenderer xyItemRenderer = xyPlot.getRenderer();
            for (int i = 0; i < xyDataset.getSeriesCount(); i++) {
                xyItemRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT);
            }
        }
        xyPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_134);
        xyPlot.setRangeGridlineStroke(new BasicStroke(1f));
        xyPlot.setDomainGridlinesVisible(false);

        xyPlot.setRangeZeroBaselineVisible(true);

    }
}

From source file:net.sf.fspdfs.chartthemes.simple.SimpleChartTheme.java

protected void handleXYPlotSettings(XYPlot p, JRChartPlot jrPlot) {
    PlotSettings plotSettings = getPlotSettings();
    XYItemRenderer xyItemRenderer = p.getRenderer();
    Paint[] paintSequence = getPaintSequence(plotSettings, jrPlot);
    if (paintSequence != null) {
        for (int i = 0; i < paintSequence.length; i++) {
            xyItemRenderer.setSeriesPaint(i, paintSequence[i]);
        }//from  w  w w  .  j  a  v  a 2  s . c  o m
    }
    Paint[] outlinePaintSequence = getOutlinePaintSequence(plotSettings);
    if (outlinePaintSequence != null) {
        for (int i = 0; i < outlinePaintSequence.length; i++) {
            xyItemRenderer.setSeriesOutlinePaint(i, outlinePaintSequence[i]);
        }
    }
    Stroke[] strokeSequence = getStrokeSequence(plotSettings);
    if (strokeSequence != null) {
        for (int i = 0; i < strokeSequence.length; i++) {
            xyItemRenderer.setSeriesStroke(i, strokeSequence[i]);
        }
    }
    Stroke[] outlineStrokeSequence = getOutlineStrokeSequence(plotSettings);
    if (outlineStrokeSequence != null) {
        for (int i = 0; i < outlineStrokeSequence.length; i++) {
            xyItemRenderer.setSeriesOutlineStroke(i, outlineStrokeSequence[i]);
        }
    }

    Boolean domainGridlineVisible = plotSettings.getDomainGridlineVisible();
    if (domainGridlineVisible == null || domainGridlineVisible.booleanValue()) {
        PaintProvider domainGridlinePaint = plotSettings.getDomainGridlinePaint();
        if (domainGridlinePaint != null) {
            p.setDomainGridlinePaint(domainGridlinePaint.getPaint());
        }
        Stroke domainGridlineStroke = plotSettings.getDomainGridlineStroke();
        if (domainGridlineStroke != null) {
            p.setDomainGridlineStroke(domainGridlineStroke);
        }

    }
    Boolean rangeGridlineVisible = plotSettings.getRangeGridlineVisible();
    if (rangeGridlineVisible == null || rangeGridlineVisible.booleanValue()) {
        PaintProvider rangeGridlinePaint = plotSettings.getRangeGridlinePaint();
        if (rangeGridlinePaint != null) {
            p.setRangeGridlinePaint(rangeGridlinePaint.getPaint());
        }
        Stroke rangeGridlineStroke = plotSettings.getRangeGridlineStroke();
        if (rangeGridlineStroke != null) {
            p.setRangeGridlineStroke(rangeGridlineStroke);
        }
    }

    //      p.setRangeZeroBaselineVisible(true);

}

From source file:net.sf.jasperreports.chartthemes.simple.SimpleChartTheme.java

protected void handleXYPlotSettings(XYPlot p, JRChartPlot jrPlot) {
    PlotSettings plotSettings = getPlotSettings();
    XYItemRenderer xyItemRenderer = p.getRenderer();
    Paint[] paintSequence = getPaintSequence(plotSettings, jrPlot);
    if (paintSequence != null) {
        for (int i = 0; i < paintSequence.length; i++) {
            xyItemRenderer.setSeriesPaint(i, paintSequence[i]);
        }/* w  w w  .j av  a2 s . c  o  m*/
    }
    Paint[] outlinePaintSequence = getOutlinePaintSequence(plotSettings);
    if (outlinePaintSequence != null) {
        for (int i = 0; i < outlinePaintSequence.length; i++) {
            xyItemRenderer.setSeriesOutlinePaint(i, outlinePaintSequence[i]);
        }
    }
    Stroke[] strokeSequence = getStrokeSequence(plotSettings);
    if (strokeSequence != null) {
        for (int i = 0; i < strokeSequence.length; i++) {
            xyItemRenderer.setSeriesStroke(i, strokeSequence[i]);
        }
    }
    Stroke[] outlineStrokeSequence = getOutlineStrokeSequence(plotSettings);
    if (outlineStrokeSequence != null) {
        for (int i = 0; i < outlineStrokeSequence.length; i++) {
            xyItemRenderer.setSeriesOutlineStroke(i, outlineStrokeSequence[i]);
        }
    }

    Boolean domainGridlineVisible = plotSettings.getDomainGridlineVisible();
    if (domainGridlineVisible == null || domainGridlineVisible) {
        PaintProvider domainGridlinePaint = plotSettings.getDomainGridlinePaint();
        if (domainGridlinePaint != null) {
            p.setDomainGridlinePaint(domainGridlinePaint.getPaint());
        }
        Stroke domainGridlineStroke = plotSettings.getDomainGridlineStroke();
        if (domainGridlineStroke != null) {
            p.setDomainGridlineStroke(domainGridlineStroke);
        }

    }
    Boolean rangeGridlineVisible = plotSettings.getRangeGridlineVisible();
    if (rangeGridlineVisible == null || rangeGridlineVisible) {
        PaintProvider rangeGridlinePaint = plotSettings.getRangeGridlinePaint();
        if (rangeGridlinePaint != null) {
            p.setRangeGridlinePaint(rangeGridlinePaint.getPaint());
        }
        Stroke rangeGridlineStroke = plotSettings.getRangeGridlineStroke();
        if (rangeGridlineStroke != null) {
            p.setRangeGridlineStroke(rangeGridlineStroke);
        }
    }

    //      p.setRangeZeroBaselineVisible(true);

}

From source file:maltcms.ui.fileHandles.serialized.JFCPanel.java

private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBox1ActionPerformed
    String s = (String) jComboBox1.getSelectedItem();
    Logger.getLogger(getClass().getName()).log(Level.INFO, "Selected: {0}", s);
    XYPlot oldPlot = this.chartPanel.getChart().getXYPlot();
    XYItemRenderer xyir = oldPlot.getRenderer();
    if (xyir instanceof XYBlockRenderer) {
        jComboBox1.setEnabled(false);/*from w w  w. j  ava 2  s  .  com*/
        return;
    }
    this.chartPanel.getChart().getXYPlot().setRenderer(null);
    int datasets = this.chartPanel.getChart().getXYPlot().getSeriesCount();
    XYItemRenderer newRenderer = null;
    if (xyir instanceof XYLineAndShapeRenderer) {
        if (s.equalsIgnoreCase("lines")) {
            ((XYLineAndShapeRenderer) xyir).setBaseLinesVisible(true);
            ((XYLineAndShapeRenderer) xyir).setBaseShapesVisible(false);
            newRenderer = xyir;
            //this.chartPanel.getChart().getXYPlot().setRenderer(newRenderer);
        } else if (s.equalsIgnoreCase("lines and shapes")) {
            ((XYLineAndShapeRenderer) xyir).setBaseLinesVisible(true);
            ((XYLineAndShapeRenderer) xyir).setBaseShapesVisible(true);
            newRenderer = xyir;
            //this.chartPanel.getChart().getXYPlot().setRenderer(newRenderer);
        } else if (s.equalsIgnoreCase("shapes")) {
            ((XYLineAndShapeRenderer) xyir).setBaseLinesVisible(false);
            ((XYLineAndShapeRenderer) xyir).setBaseShapesVisible(true);
            newRenderer = xyir;
        } else if (s.equalsIgnoreCase("bars")) {
            XYBarRenderer xyl = new XYBarRenderer(0);
            StandardXYBarPainter sp = new StandardXYBarPainter();
            xyl.setBarPainter(sp);
            xyl.setShadowVisible(false);
            xyl.clearSeriesPaints(true);
            xyl.setAutoPopulateSeriesFillPaint(false);
            xyl.setAutoPopulateSeriesOutlinePaint(false);
            xyl.setAutoPopulateSeriesPaint(false);
            newRenderer = xyl;
        } else if (s.equalsIgnoreCase("clustered bars")) {
            ClusteredXYBarRenderer xyl = new ClusteredXYBarRenderer(0, true);
            StandardXYBarPainter sp = new StandardXYBarPainter();
            xyl.setBarPainter(sp);
            xyl.setShadowVisible(false);
            xyl.clearSeriesPaints(true);
            xyl.setAutoPopulateSeriesFillPaint(false);
            xyl.setAutoPopulateSeriesOutlinePaint(false);
            xyl.setAutoPopulateSeriesPaint(false);
            newRenderer = xyl;
        }
    } else {
        if (s.equalsIgnoreCase("lines")) {
            newRenderer = new XYLineAndShapeRenderer(true, false);
            //this.chartPanel.getChart().getXYPlot().setRenderer(newRenderer);
        } else if (s.equalsIgnoreCase("lines and shapes")) {
            newRenderer = new XYLineAndShapeRenderer(true, true);
            //this.chartPanel.getChart().getXYPlot().setRenderer(newRenderer);
        } else if (s.equalsIgnoreCase("shapes")) {
            newRenderer = new XYLineAndShapeRenderer(false, true);
            //this.chartPanel.getChart().getXYPlot().setRenderer(newRenderer);
        } else if (s.equalsIgnoreCase("bars")) {
            XYBarRenderer xyl = new XYBarRenderer(0);
            StandardXYBarPainter sp = new StandardXYBarPainter();
            xyl.setBarPainter(sp);
            xyl.setShadowVisible(false);
            xyl.clearSeriesPaints(true);
            xyl.setAutoPopulateSeriesFillPaint(false);
            xyl.setAutoPopulateSeriesOutlinePaint(false);
            xyl.setAutoPopulateSeriesPaint(false);
            newRenderer = xyl;

        } else if (s.equalsIgnoreCase("clustered bars")) {
            ClusteredXYBarRenderer xyl = new ClusteredXYBarRenderer(0, true);
            StandardXYBarPainter sp = new StandardXYBarPainter();
            xyl.setBarPainter(sp);
            xyl.setShadowVisible(false);
            xyl.clearSeriesPaints(true);
            xyl.setAutoPopulateSeriesFillPaint(false);
            xyl.setAutoPopulateSeriesOutlinePaint(false);
            xyl.setAutoPopulateSeriesPaint(false);
            newRenderer = xyl;
        }
    }

    newRenderer.setBasePaint(xyir.getBasePaint());
    newRenderer.setBaseOutlinePaint(xyir.getBaseOutlinePaint());
    newRenderer.setBaseItemLabelPaint(xyir.getBaseItemLabelPaint());
    //        XYPlot xyp = new XYPlot();
    //        for(int i = 0;i<oldPlot.getRangeAxisCount();i++) {
    //            xyp.setRangeAxis(i, oldPlot.getRangeAxis(i));
    //        }
    //        for(int i = 0;i<oldPlot.getDomainAxisCount();i++) {
    //            xyp.setDomainAxis(i, oldPlot.getDomainAxis(i));
    //        }
    for (int i = 0; i < datasets; i++) {
        //            XYDataset xyds = oldPlot.getDataset(i);
        //            xyp.setDataset(i, xyds);
        newRenderer.setSeriesPaint(i, xyir.getSeriesPaint(i));
        newRenderer.setSeriesOutlinePaint(i, xyir.getSeriesOutlinePaint(i));
        newRenderer.setSeriesItemLabelPaint(i, xyir.getSeriesItemLabelPaint(i));
    }
    oldPlot.setRenderer(newRenderer);
    //        this.chartPanel.setChart(new JFreeChart(xyp));
}