Example usage for org.jfree.chart.plot XYPlot getRenderer

List of usage examples for org.jfree.chart.plot XYPlot getRenderer

Introduction

In this page you can find the example usage for org.jfree.chart.plot XYPlot getRenderer.

Prototype

public XYItemRenderer getRenderer() 

Source Link

Document

Returns the renderer for the primary dataset.

Usage

From source file:org.limy.eclipse.qalab.task.DistanceGraphTask.java

/**
 * @param dataset //w  w w.j  a v  a2 s.c om
 * @throws IOException 
 * 
 */
private void drawGraph(XYDataset dataset) throws IOException {

    JFreeChart chart = ChartFactory.createScatterPlot("Distance from the Main Sequence", "Instability",
            "Abstractness", dataset, PlotOrientation.VERTICAL, false, false, false);

    XYPlot plot = chart.getXYPlot();

    plot.getRenderer().addAnnotation(
            new XYLineAnnotation(-0.1, 1.1, 1.1, -0.1, new BasicStroke(2), new Color(50, 220, 50)),
            Layer.BACKGROUND);

    plot.getRenderer().setShape(new Ellipse2D.Double(-4, -4, 8, 8));
    plot.getRenderer().setPaint(new Color(0xec, 0x76, 0x37));

    plot.getDomainAxis().setRangeWithMargins(0, 1);
    plot.getRangeAxis().setRangeWithMargins(0, 1);

    chart.getTitle().setPaint(Color.BLUE);

    plot.setDomainCrosshairVisible(true);
    plot.setDomainCrosshairPaint(Color.GRAY);
    plot.setRangeCrosshairVisible(true);
    plot.setRangeCrosshairPaint(Color.GRAY);

    LimyGraphUtils.writeImagePng(chart, out, 400, 380);

}

From source file:edu.ucla.stat.SOCR.chart.demo.LineChartDemo3.java

/**
 * Creates a chart.//from  w  ww. j  av a2  s  .c  o m
 * 
 * @param dataset  a dataset.
 * 
 * @return A chart based on the supplied dataset.
 */
protected JFreeChart createChart(XYDataset dataset) {

    JFreeChart chart = ChartFactory.createXYLineChart(chartTitle, // chart title
            domainLabel, // x axis label
            rangeLabel, // y axis label
            dataset, // data
            PlotOrientation.VERTICAL, !legendPanelOn, // include legend
            true, // tooltips
            false // urls
    );

    // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...

    // get a reference to the plot for further customisation...
    XYPlot plot = (XYPlot) chart.getPlot();
    XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer();
    renderer.setBaseShapesVisible(true);
    renderer.setBaseShapesFilled(true);
    renderer.setDrawOutlines(true);
    renderer.setLegendItemLabelGenerator(new SOCRXYSeriesLabelGenerator());

    // change the auto tick unit selection to integer units only...
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();
    domainAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    setXSummary(dataset);
    return chart;
}

From source file:edu.ucla.stat.SOCR.chart.demo.XYAreaChartDemo1.java

protected JFreeChart createLegend(XYDataset dataset) {

    JFreeChart chart = ChartFactory.createXYAreaChart(chartTitle, // chart title
            "Category", // domain axis label
            "Value", // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, // orientation
            true, // include legend
            true, // tooltips
            false // url
    );/* ww w  .  ja va  2s .  com*/

    // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
    chart.setBackgroundPaint(Color.white);
    XYPlot plot = (XYPlot) chart.getPlot();

    XYItemRenderer renderer = plot.getRenderer();
    renderer.setLegendItemLabelGenerator(new SOCRXYSeriesLabelGenerator());
    return chart;

}

From source file:org.jfree.chart.demo.TimeSeriesDemo9.java

/**
 * A demonstration application showing how to create a simple time series chart.  This
 * example uses monthly data.// w ww .j ava2  s.  c o  m
 *
 * @param title  the frame title.
 */
public TimeSeriesDemo9(final String title) {

    super(title);

    // create a title...
    final String chartTitle = "Test";
    final XYDataset dataset = createDataset();

    final JFreeChart chart = ChartFactory.createTimeSeriesChart(chartTitle, "Date", "Price Per Unit", dataset,
            true, true, false);

    //        final StandardLegend sl = (StandardLegend) chart.getLegend();
    //      sl.setDisplaySeriesShapes(true);

    final XYPlot plot = chart.getXYPlot();
    final XYItemRenderer r = plot.getRenderer();
    if (r instanceof StandardXYItemRenderer) {
        final StandardXYItemRenderer renderer = (StandardXYItemRenderer) r;
        renderer.setPlotShapes(true);
        renderer.setShapesFilled(true);
        renderer.setSeriesShape(0, new Ellipse2D.Double(-3.0, -3.0, 6.0, 6.0));
        renderer.setSeriesShape(1, new Rectangle2D.Double(-3.0, -3.0, 6.0, 6.0));
        final GeneralPath s2 = new GeneralPath();
        s2.moveTo(0.0f, -3.0f);
        s2.lineTo(3.0f, 3.0f);
        s2.lineTo(-3.0f, 3.0f);
        s2.closePath();
        renderer.setSeriesShape(2, s2);
        final GeneralPath s3 = new GeneralPath();
        s3.moveTo(-1.0f, -3.0f);
        s3.lineTo(1.0f, -3.0f);
        s3.lineTo(1.0f, -1.0f);
        s3.lineTo(3.0f, -1.0f);
        s3.lineTo(3.0f, 1.0f);
        s3.lineTo(1.0f, 1.0f);
        s3.lineTo(1.0f, 3.0f);
        s3.lineTo(-1.0f, 3.0f);
        s3.lineTo(-1.0f, 1.0f);
        s3.lineTo(-3.0f, 1.0f);
        s3.lineTo(-3.0f, -1.0f);
        s3.lineTo(-1.0f, -1.0f);
        s3.closePath();
        renderer.setSeriesShape(3, s3);
    }

    plot.getDomainAxis().setVisible(false);
    plot.getRangeAxis().setVisible(false);
    final ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);

}

From source file:uk.co.petertribble.jkstat.gui.KstatBaseChart.java

/**
 * Set the colours used in the chart.//from w w  w.  ja va  2  s . com
 *
 * @param colors a List of Colors to be used to render the series of
 * data charts.
 */
public void setColors(List<Color> colors) {
    XYPlot plot = chart.getXYPlot();
    XYItemRenderer renderer = plot.getRenderer();
    int n = 0;
    for (Color color : colors) {
        renderer.setSeriesPaint(n, color);
        n++;
    }
}

From source file:org.gvsig.gui.beans.graphic.GraphicChartPanel.java

/**
 * Creates a chart./*from w  ww . j  av a 2 s  . c  o m*/
 * @param dataset the dataset.
 * @return A chart.
 */
private void createChart() {
    chart = ChartFactory.createXYLineChart(null, null, null, dataset, PlotOrientation.VERTICAL, false, true,
            true);

    // Definir la lista de colores
    XYPlot plot = chart.getXYPlot();
    plot.getRenderer().setSeriesPaint(0, Color.red);
    plot.getRenderer().setSeriesPaint(1, Color.green);
    plot.getRenderer().setSeriesPaint(2, Color.blue);
    plot.getRenderer().setSeriesPaint(3, Color.cyan);
    plot.getRenderer().setSeriesPaint(4, Color.black);
    plot.getRenderer().setSeriesPaint(5, Color.darkGray);
    plot.getRenderer().setSeriesPaint(6, Color.gray);
    plot.getRenderer().setSeriesPaint(7, Color.magenta);
    plot.getRenderer().setSeriesPaint(8, Color.yellow);
    plot.getRenderer().setSeriesPaint(9, Color.orange);

    Image img = new ImageIcon(getClass().getResource("images/splash.png")).getImage();
    plot.setBackgroundPaint(null);
    plot.setBackgroundImageAlpha(0.18f);
    plot.setBackgroundImage(img);
}

From source file:org.codehaus.mojo.chronos.chart.SummaryThroughputChartSource.java

private XYPlot createThreadCountPlot(ResourceBundle bundle, ReportConfig config) {
    TimeSeriesCollection dataset2 = createThreadCountdataset(bundle, config);
    String label = bundle.getString("chronos.label.threadcount.y");
    XYPlot threadCountPlot = ChartUtil.newPlot(dataset2, label, false);
    threadCountPlot.setRangeAxisLocation(AxisLocation.TOP_OR_LEFT);
    threadCountPlot.getRenderer().setSeriesPaint(0, Color.GRAY);
    return threadCountPlot;
}

From source file:BubbleChartDemo.java

public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, java.io.IOException {

    Connection conn = null;//ww  w .ja  v  a 2s  . c  o  m
    Statement stmt = null;
    ResultSet rs = null;
    ResultSetMetaData rsm = null;

    OutputStream out = response.getOutputStream();
    try {

        DefaultXYZDataset dataset = new DefaultXYZDataset();
        double[] x = { 2.1, 2.3, 2.3, 2.2, 2.2, 1.8, 1.8, 1.9, 2.3, 3.8 };
        double[] y = { 14.1, 11.1, 10.0, 8.8, 8.7, 8.4, 5.4, 4.1, 4.1, 25 };
        double[] z = { 2.4, 2.7, 2.7, 2.2, 2.2, 2.2, 2.1, 2.2, 1.6, 4 };
        double[][] series = new double[][] { x, y, z };
        dataset.addSeries("Series 1", series);

        JFreeChart chart = ChartFactory.createBubbleChart("Bubble Chart Demo 1", "X", "Y", dataset,
                PlotOrientation.HORIZONTAL, true, true, true);
        XYPlot plot = (XYPlot) chart.getPlot();
        plot.setForegroundAlpha(0.65f);

        XYItemRenderer renderer = plot.getRenderer();
        renderer.setSeriesPaint(0, Color.blue);

        // increase the margins to account for the fact that the auto-range
        // doesn't take into account the bubble size...
        NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();
        domainAxis.setLowerMargin(0.15);
        domainAxis.setUpperMargin(0.15);
        NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
        rangeAxis.setLowerMargin(0.15);
        rangeAxis.setUpperMargin(0.15);

        response.setContentType("image/png");
        int width = 800;
        int height = 600;
        ChartUtilities.writeChartAsPNG(out, chart, width, height);

    } catch (Exception e) {
        throw new ServletException(e);
    }

}

From source file:org.jfree.chart.demo.XYStepAreaChartDemo.java

/**
 * Creates a chart.//from   w w  w .j a v a  2s . co m
 * 
 * @param dataset  the dataset.
 * 
 * @return A chart.
 */
private JFreeChart createChart(final XYDataset dataset) {

    final JFreeChart chart = ChartFactory.createXYStepAreaChart("XY Step Area Chart Demo", "Domain (X)",
            "Range (Y)", dataset, PlotOrientation.VERTICAL, true, // legend
            true, // tool tips
            false // URLs
    );

    // color
    final XYPlot plot = chart.getXYPlot();
    plot.getRenderer().setSeriesPaint(0, Color.green);

    // fill shapes      
    final XYStepAreaRenderer rend = (XYStepAreaRenderer) plot.getRenderer();
    rend.setShapesFilled(true);

    return chart;
}

From source file:edu.ucsd.hep.slhaviewer.view.MassGraphPanel.java

public MassGraphPanel() {
    this.setLayout(new BorderLayout());

    dataset = new XYSeriesCollection();

    JFreeChart chart = ChartFactory.createXYLineChart("Mass Spectrum", "", "mass [GeV]", dataset,
            PlotOrientation.VERTICAL, false, // no legend
            true, // add tooltips
            false // add urls
    );// w w w.  j  a v a  2 s. co m

    // get a reference to the plot for further customisation...
    XYPlot plot = (XYPlot) chart.getPlot();

    renderer = (XYLineAndShapeRenderer) plot.getRenderer();

    // change the auto tick unit selection to integer units only...
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();
    domainAxis.setTickMarksVisible(false);
    domainAxis.setTickLabelsVisible(false);

    chart.setBackgroundPaint(Color.WHITE); // 'outside'
    plot.setBackgroundPaint(Color.WHITE); // 'inside'
    plot.setRangeGridlinePaint(Color.DARK_GRAY);

    this.add(new ChartPanel(chart), BorderLayout.CENTER);

}