Example usage for org.jfree.chart.plot CombinedDomainXYPlot CombinedDomainXYPlot

List of usage examples for org.jfree.chart.plot CombinedDomainXYPlot CombinedDomainXYPlot

Introduction

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

Prototype

public CombinedDomainXYPlot() 

Source Link

Document

Default constructor.

Usage

From source file:org.fhcrc.cpl.viewer.gui.SpectrumChartFactory.java

public static ChartPanel CreateChartPanel(java.util.List datasets, Color[] colors) {
    if (datasets.size() == 1)
        return CreateChartPanel((XYSeriesCollection) datasets.get(0), colors);

    CombinedDomainXYPlot combined = new CombinedDomainXYPlot();
    for (Iterator it = datasets.iterator(); it.hasNext();) {
        XYSeriesCollection series = (XYSeriesCollection) it.next();
        XYPlot xy = createXYPlot(series, colors);
        combined.add(xy);//w  w  w  .j ava 2  s  . co m
    }
    NumberAxis axisDomain = new NumberAxis();
    axisDomain.setAutoRangeIncludesZero(false);
    //      axisDomain.setRange(400.0, 1600.0);
    combined.setDomainAxis(axisDomain);

    JFreeChart chart = new JFreeChart(combined);
    ChartPanel chartPanel = new SpectrumChartPanel(chart);
    chartPanel.setDisplayToolTips(true);
    chartPanel.setMouseZoomable(true);
    // Remove the autogenerated subtitle
    if (chart.getSubtitleCount() == 1)
        chart.removeSubtitle(chart.getSubtitle(chart.getSubtitleCount() - 1));
    return chartPanel;
}

From source file:com.bdb.weather.display.RainPlot.java

private void createChartElements() {
    String unitString = Depth.getDefaultUnit().toString();
    rateDomain = String.format(RAIN_RATE_DOMAIN_PREFIX, unitString);
    rainPlot = new XYPlot();
    rainPlot.setRangeAxis(RainRangeAxis.create());
    rainRatePlot = new XYPlot();
    rainRatePlot.setRangeAxis(RainRangeAxis.create());

    plot = new CombinedDomainXYPlot();
    plot.setDomainAxis(new DateAxis("Time"));

    plot.add(rainRatePlot);//from   ww  w.ja  v  a2s.c o  m
    plot.add(rainPlot);

    chart = new JFreeChart(plot);
    chart.getLegend().setPosition(RectangleEdge.RIGHT);

    chartViewer = new ChartViewer(chart);
    chartViewer.setMaxHeight(10000);
    chartViewer.setMaxWidth(10000);
    chartViewer.setMinHeight(200);
    chartViewer.setMinWidth(400);

    rainDataset = new TimeSeriesCollection();
    rainSeries = new TimeSeries(RAIN_DOMAIN);
    rainDataset.addSeries(rainSeries);
    rainPlot.setDataset(rainDataset);

    rainRateDataset = new TimeSeriesCollection();
    rainRateSeries = new TimeSeries(rateDomain);
    rainRateDataset.addSeries(rainRateSeries);
    rainRatePlot.setDataset(rainRateDataset);

    XYToolTipGenerator ttg = new StandardXYToolTipGenerator(StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT,
            DateFormat.getTimeInstance(), Depth.getDefaultFormatter());

    XYBarRenderer renderer = new XYBarRenderer();
    renderer.setShadowVisible(false);
    renderer.setBarPainter(new StandardXYBarPainter());
    renderer.setBasePaint(Color.BLUE);
    renderer.setSeriesPaint(0, Color.BLUE);
    renderer.setBaseToolTipGenerator(ttg);
    plot.setRenderer(renderer);

    XYItemRenderer rateRenderer = new XYLineAndShapeRenderer(true, false);
    rateRenderer.setBasePaint(Color.RED);
    rateRenderer.setSeriesPaint(0, Color.RED);
    rateRenderer.setBaseToolTipGenerator(ttg);
    rainRatePlot.setRenderer(rateRenderer);
}

From source file:ec.util.chart.swing.JTimeSeriesChart.java

private static JFreeChart createTsChart() {
    CombinedDomainXYPlot plot = new CombinedDomainXYPlot();

    plot.setAxisOffset(RectangleInsets.ZERO_INSETS);

    DateAxis domainAxis = new DateAxis();
    domainAxis.setTickLabelInsets(new RectangleInsets(2, 5, 2, 5));
    domainAxis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    domainAxis.setLowerMargin(0.02);//from www.  j  a  v  a  2s .  c  om
    domainAxis.setUpperMargin(0.02);
    plot.setDomainAxis(domainAxis);

    JFreeChart result = new JFreeChart("", null, plot, true);
    result.setPadding(CHART_PADDING);
    result.getLegend().setFrame(BlockBorder.NONE);
    result.getLegend().setBackgroundPaint(null);

    return result;
}