Example usage for org.jfree.chart.renderer.xy DefaultXYItemRenderer DefaultXYItemRenderer

List of usage examples for org.jfree.chart.renderer.xy DefaultXYItemRenderer DefaultXYItemRenderer

Introduction

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

Prototype

DefaultXYItemRenderer

Source Link

Usage

From source file:statistic.graph.XYChart.java

public XYChart(String title, String xAxisLabel, String yAxis, XYSeriesCollection collection, boolean linear) {
    super(title, JFreeChart.DEFAULT_TITLE_FONT, new XYPlot(), true);
    this.collection = collection;
    setBackgroundPaint(Color.WHITE);
    setTitle(title);//from   w  w  w. j a  va2s.c  om
    plot = (XYPlot) getPlot();
    plot.setDataset(collection);
    if (linear) {
        plot.setRenderer(new DefaultXYItemRenderer());
    } else {
        plot.setRenderer(new XYStepRenderer());
    }
    plot.setOrientation(PlotOrientation.VERTICAL);
    initXAxis(xAxisLabel);
    plot.setRangeAxis(new NumberAxis(yAxis));
    plot.setBackgroundPaint(Color.LIGHT_GRAY);
    plot.setDomainGridlinePaint(Color.WHITE);
    plot.setRangeGridlinePaint(Color.WHITE);
    plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(true);
}

From source file:graph.MySensorPanel.java

/**
 * Creates a new self-contained demo panel.
 *///from w  ww.j a  va  2 s.c  o  m
public MySensorPanel(String header_str) {
    //super(new BorderLayout());
    this.series1 = new TimeSeries("Temperature");
    this.series2 = new TimeSeries("Humidity");
    TimeSeriesCollection dataset1 = new TimeSeriesCollection(this.series1);
    TimeSeriesCollection dataset2 = new TimeSeriesCollection(this.series2);

    JFreeChart chart = ChartFactory.createTimeSeriesChart(header_str, "Time", "C", dataset1, true, true,
            false);

    /*this.addChart(chart);*/

    XYPlot plot = (XYPlot) chart.getPlot();
    ValueAxis axis = plot.getDomainAxis();
    axis.setAutoRange(true);
    axis.setFixedAutoRange(1000.0 * 60 * 60 /* 24*/); // 24 hrs

    plot.setDataset(1, dataset2);
    NumberAxis rangeAxis2 = new NumberAxis("%");
    rangeAxis2.setAutoRangeIncludesZero(false);
    plot.setRenderer(1, new DefaultXYItemRenderer());
    plot.setRangeAxis(1, rangeAxis2);
    plot.mapDatasetToRangeAxis(1, 1);

    ChartUtilities.applyCurrentTheme(chart);
    plot.setBackgroundPaint(Color.DARK_GRAY);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);

    chartPanel = new ChartPanel(chart);
}

From source file:mediamatrix.gui.JVMMemoryProfilerPanel.java

public JVMMemoryProfilerPanel() {
    initComponents();// w  w w.  j  a  v  a2  s .co m
    profiler = new JVMMemoryProfiler(frequency);
    profiler.addListener(new JVMMemoryProfilerListener() {

        @Override
        public void addScore(long t, long f) {
            total.add(new Millisecond(), t);
            free.add(new Millisecond(), f);
        }
    });

    total = new TimeSeries("Total Memory");
    total.setMaximumItemCount(historyCount);
    free = new TimeSeries("Free Memory");
    free.setMaximumItemCount(historyCount);

    final TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(total);
    dataset.addSeries(free);

    final DateAxis domain = new DateAxis("Time");
    final NumberAxis range = new NumberAxis("Memory");
    domain.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 12));
    domain.setLabelFont(new Font("SansSerif", Font.PLAIN, 14));
    range.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 12));
    range.setLabelFont(new Font("SansSerif", Font.PLAIN, 14));
    range.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    final XYItemRenderer renderer = new DefaultXYItemRenderer();
    renderer.setSeriesPaint(0, Color.red);
    renderer.setSeriesPaint(1, Color.green);
    renderer.setBaseStroke(new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL));

    final XYPlot plot = new XYPlot(dataset, domain, range, renderer);
    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
    domain.setAutoRange(true);
    domain.setLowerMargin(0.0);
    domain.setUpperMargin(0.0);
    domain.setTickLabelsVisible(true);

    final JFreeChart chart = new JFreeChart("JVM Memory Usage", new Font("SansSerif", Font.BOLD, 24), plot,
            true);
    chart.setBackgroundPaint(Color.white);
    final ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4),
            BorderFactory.createLineBorder(Color.black)));
    chart.getLegend().setItemFont(new Font("SansSerif", Font.PLAIN, 12));

    add(chartPanel, BorderLayout.CENTER);
}

From source file:com.bdb.weather.display.freeplot.FreePlotSeriesCollection.java

/**
 * Constructor.//from w  ww  .j a va 2s. c  o  m
 * 
 * @param groupName The name of this group
 * @param units The units of this collection, used to setup the Range Axis
 * @param datasetIndex The dataset index from a JFreePlot perspective
 * @param domainAxisIndex The index of the domain axis, from a JFreeChart perspective
 * @param plot The plot to which the dataset and axis will be added
 * @param stroke The Stroke used to draw the series of this collection
 * @param factory The factory used to create the series
 */
FreePlotSeriesCollection(String groupName, Unit units, int datasetIndex, int domainAxisIndex, XYPlot plot,
        Stroke stroke, SeriesFactory<T> factory) {
    this.groupName = groupName;
    this.dataset = new TimeSeriesCollection();
    this.datasetIndex = datasetIndex;
    this.factory = factory;
    this.plot = plot;
    renderer = new DefaultXYItemRenderer();
    renderer.setBaseShapesVisible(false);
    renderer.setBaseToolTipGenerator(StandardXYToolTipGenerator.getTimeSeriesInstance());
    renderer.setDrawSeriesLineAsPath(true);
    plot.setDataset(datasetIndex, dataset);
    plot.setRenderer(datasetIndex, renderer);
    series = factory.createSeriesGroup(groupName, stroke);
    plot.mapDatasetToDomainAxis(datasetIndex, domainAxisIndex);
}

From source file:org.mwc.debrief.multipath2.MultiPathView.java

private void createPlot(final Composite ui) { // create a date-formatting axis
    final DateAxis dateAxis = new RelativeDateAxis();
    dateAxis.setStandardTickUnits(DateAxisEditor.createStandardDateTickUnitsAsTickUnits());

    final NumberAxis valAxis = new NumberAxis("Delay (Secs)");
    final DefaultXYItemRenderer theRenderer = new DefaultXYItemRenderer();
    theRenderer.setBaseShapesVisible(false);

    _thePlot = new XYPlot(null, dateAxis, valAxis, theRenderer);
    final JFreeChart _plotArea = new JFreeChart(_thePlot);

    final ChartComposite _plotControl = new ChartComposite(ui, SWT.NONE, null, true) {
        @Override//from w w w.  ja  v  a 2s  . co m
        public void mouseUp(MouseEvent event) {
            super.mouseUp(event);
            JFreeChart c = getChart();
            if (c != null) {
                c.setNotify(true); // force redraw
            }
        }
    };
    _plotControl.setChart(_plotArea);
}

From source file:com.bdb.weather.display.summary.WindSummary.java

/**
 * Create the plot.//from   ww w  .j  av a2s. c o m
 * 
 * @return The panel that contains the plot
 */
private ChartViewer createPlot() {
    JFreeChart chart = ChartFactory.createXYLineChart("", "", "", null, PlotOrientation.VERTICAL, true, true,
            true);
    plot = (XYPlot) chart.getPlot();
    ChartViewer panel = new ChartViewer(chart);
    panel.setPrefSize(500, 300);
    panel.addChartMouseListener(this);

    //
    // Set up the Domain Axis (X)
    //
    dateAxis = new DateAxis("Time");
    dateAxis.setDateFormatOverride(interval.getLegacyFormat());
    dateAxis.setVerticalTickLabels(true);
    plot.setDomainAxis(dateAxis);

    valueAxis = WindSpeedRangeAxis.create();
    plot.setRangeAxis(valueAxis);

    //
    // Set up the renderer to generate tool tips, not show shapes
    //
    DefaultXYItemRenderer renderer = new DefaultXYItemRenderer();
    renderer.setBaseShapesVisible(false);
    renderer.setBaseToolTipGenerator(
            new StandardXYToolTipGenerator(StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT,
                    interval.getLegacyFormat(), Speed.getDefaultFormatter()));
    renderer.setDefaultEntityRadius(1);
    plot.setRenderer(SUSTAINED_WIND_SERIES, renderer);

    renderer = new DefaultXYItemRenderer();
    WeatherSenseConstants.configureGustRenderer(renderer, 0);
    plot.setRenderer(GUST_SERIES, renderer);

    return panel;
}

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

/**
 * Constructs a new demonstration application.
 *
 * @param title  the frame title.//from ww  w.  ja  v  a 2 s.c  om
 */
public DynamicDataDemo2(final String title) {

    super(title);
    this.series1 = new TimeSeries("Random 1", Millisecond.class);
    this.series2 = new TimeSeries("Random 2", Millisecond.class);
    final TimeSeriesCollection dataset1 = new TimeSeriesCollection(this.series1);
    final TimeSeriesCollection dataset2 = new TimeSeriesCollection(this.series2);
    final JFreeChart chart = ChartFactory.createTimeSeriesChart("Dynamic Data Demo 2", "Time", "Value",
            dataset1, true, true, false);
    chart.setBackgroundPaint(Color.white);

    final XYPlot plot = chart.getXYPlot();
    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    //      plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 4, 4, 4, 4));
    final ValueAxis axis = plot.getDomainAxis();
    axis.setAutoRange(true);
    axis.setFixedAutoRange(60000.0); // 60 seconds

    plot.setDataset(1, dataset2);
    final NumberAxis rangeAxis2 = new NumberAxis("Range Axis 2");
    rangeAxis2.setAutoRangeIncludesZero(false);
    plot.setRenderer(1, new DefaultXYItemRenderer());
    plot.setRangeAxis(1, rangeAxis2);
    plot.mapDatasetToRangeAxis(1, 1);

    final JPanel content = new JPanel(new BorderLayout());

    final ChartPanel chartPanel = new ChartPanel(chart);
    content.add(chartPanel);

    final JButton button1 = new JButton("Add To Series 1");
    button1.setActionCommand("ADD_DATA_1");
    button1.addActionListener(this);

    final JButton button2 = new JButton("Add To Series 2");
    button2.setActionCommand("ADD_DATA_2");
    button2.addActionListener(this);

    final JButton button3 = new JButton("Add To Both");
    button3.setActionCommand("ADD_BOTH");
    button3.addActionListener(this);

    final JPanel buttonPanel = new JPanel(new FlowLayout());
    buttonPanel.add(button1);
    buttonPanel.add(button2);
    buttonPanel.add(button3);

    content.add(buttonPanel, BorderLayout.SOUTH);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(content);

}

From source file:com.planetmayo.debrief.satc.util.StraightLineCullingTestForm.java

private void culling(List<List<Coordinate>> polygons) {
    DefaultXYItemRenderer renderer = new DefaultXYItemRenderer();
    renderer.setBaseShapesVisible(false);
    ((XYPlot) chart.getPlot()).setRenderer(renderer);
    collections.removeAllSeries();/* w  w  w .j a  v a  2 s . c  o  m*/

    List<LocationRange> ranges = new ArrayList<LocationRange>(polygons.size());
    GeometryFactory factory = new GeometryFactory();
    for (List<Coordinate> coordinates : polygons) {
        Geometry geo = factory.createPolygon(coordinates.toArray(new Coordinate[0]));
        ranges.add(new LocationRange(geo));
    }
    StraightLineCulling culling = new StraightLineCulling(ranges);
    culling.process();

    int i = 0;
    for (Geometry geometry : culling.getFiltered()) {
        XYSeries series = new XYSeries("polygon " + (++i), false);
        for (Coordinate c : geometry.getCoordinates()) {
            series.add(c.x, c.y);
        }
        collections.addSeries(series);
    }
    if (culling.hasResults()) {
        drawResultLineAndPolygon(1, culling.getFirstCrissCrossLine(), culling.getConstrainedStart());
        drawResultLineAndPolygon(2, culling.getSecondCrissCrossLine(), culling.getConstrainedEnd());
    }
}

From source file:ruc.edu.window.DynamicDataDemo2.java

/**
 * Constructs a new demonstration application.
 *
 * @param title  the frame title./* w w  w. j a  v a2 s. c  o  m*/
 */
public DynamicDataDemo2(final String title) {

    super(title);
    this.series1 = new TimeSeries("Random 1");
    this.series2 = new TimeSeries("Random 2");
    final TimeSeriesCollection dataset1 = new TimeSeriesCollection(this.series1);
    final TimeSeriesCollection dataset2 = new TimeSeriesCollection(this.series2);
    final JFreeChart chart = ChartFactory.createTimeSeriesChart("Dynamic Data Demo 2", "Time", "Value",
            dataset1, true, true, false);
    chart.setBackgroundPaint(Color.white);

    final XYPlot plot = chart.getXYPlot();
    plot.setBackgroundPaint(Color.white);
    plot.setDomainGridlinePaint(Color.gray);
    plot.setRangeGridlinePaint(Color.gray);
    plot.setDomainPannable(true);
    //      plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 4, 4, 4, 4));
    final ValueAxis axis = plot.getDomainAxis();
    axis.setAutoRange(true);
    //axis.setAutoRangeMinimumSize(600000.0);
    axis.setFixedAutoRange(5000.0); // 60 seconds

    plot.setDataset(1, dataset2);
    //final NumberAxis rangeAxis2 = new NumberAxis("Range Axis 2");
    /// rangeAxis2.setAutoRangeIncludesZero(false);
    plot.setRenderer(0, new DefaultXYItemRenderer());
    plot.setRenderer(1, new DefaultXYItemRenderer());

    //plot.setRangeAxis(1, rangeAxis2);
    plot.mapDatasetToRangeAxis(1, 0);

    plot.getRenderer().setSeriesPaint(0, new Color(91, 155, 213));
    plot.getRenderer(1).setSeriesPaint(0, Color.BLUE);

    XYLineAndShapeRenderer render2 = new XYLineAndShapeRenderer() {
        Stroke soild = new BasicStroke(2.0f);
        Stroke dashed = new BasicStroke(10.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 10.0f,
                new float[] { 10.0f }, 0.0f);

        @Override
        public Stroke getItemStroke(int row, int column) {
            return dashed;
        }
    };

    plot.setRenderer(1, render2);

    final JPanel content = new JPanel(new BorderLayout());

    final ChartPanel chartPanel = new ChartPanel(chart);
    content.add(chartPanel);

    final JButton button1 = new JButton("Add To Series 1");
    button1.setActionCommand("ADD_DATA_1");
    button1.addActionListener(this);

    final JButton button2 = new JButton("Add To Series 2");
    button2.setActionCommand("ADD_DATA_2");
    button2.addActionListener(this);

    final JButton button3 = new JButton("Add To Both");
    button3.setActionCommand("ADD_BOTH");
    button3.addActionListener(this);

    final JPanel buttonPanel = new JPanel(new FlowLayout());
    buttonPanel.add(button1);
    buttonPanel.add(button2);
    buttonPanel.add(button3);

    content.add(buttonPanel, BorderLayout.SOUTH);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(content);

}

From source file:com.bdb.weather.display.stripchart.StripChart.java

private void createRenderer(int dataset, TimeSeriesCollection collection, NumberFormat format) {
    DefaultXYItemRenderer renderer = new DefaultXYItemRenderer();
    renderer.setBaseShapesVisible(false);

    renderer.setBaseToolTipGenerator(/*  ww w .  ja va2s  .  co  m*/
            new StandardXYToolTipGenerator(StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT,
                    DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.LONG), format));

    renderer.setDefaultEntityRadius(1);
    plot.setRenderer(dataset, renderer);
    plot.setDataset(dataset, collection);
}