Example usage for org.jfree.data.xy XYSeriesCollection addSeries

List of usage examples for org.jfree.data.xy XYSeriesCollection addSeries

Introduction

In this page you can find the example usage for org.jfree.data.xy XYSeriesCollection addSeries.

Prototype

public void addSeries(XYSeries series) 

Source Link

Document

Adds a series to the collection and sends a DatasetChangeEvent to all registered listeners.

Usage

From source file:support.SystemMonitorGui.java

private XYPlot createChartFrame(XYSeries series) {
    XYSeriesCollection dataSet = new XYSeriesCollection();
    dataSet.addSeries(series);
    JFreeChart chart = ChartFactory.createXYLineChart("Memory Allocation Rate", "Time (ms)",
            "Allocation Rate (MB/s)", dataSet, PlotOrientation.VERTICAL, true, true, false);
    XYPlot plot = chart.getXYPlot();//from   w  w w  . j  a va2s .c  o m
    plot.setBackgroundPaint(Color.WHITE);
    plot.setDomainGridlinePaint(Color.DARK_GRAY);
    plot.setRangeGridlinePaint(Color.DARK_GRAY);
    plot.getRenderer().setSeriesPaint(0, Color.BLUE);

    JFrame frame = new JFrame();
    frame.setBackground(Color.WHITE);
    frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
    frame.setTitle("Hazelcast Jet Source Builder Sample");
    frame.setBounds(WINDOW_X, WINDOW_Y, WINDOW_WIDTH, WINDOW_HEIGHT);
    frame.setLayout(new BorderLayout());
    frame.add(new ChartPanel(chart));
    frame.addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent windowEvent) {
            hzMap.removeEntryListener(entryListenerId);
        }
    });
    frame.setVisible(true);
    return plot;
}

From source file:au.edu.jcu.usb.USBPlotFrame.java

/**
 * Construct a Frame to plot our USB Data.
 *
 * The Frame contains an XY plot (scatter plot), with a single XYSeries.
 *
 * @throws HeadlessException //from w  w  w  . j av a  2 s  .c om
 */
public USBPlotFrame() throws HeadlessException {
    super("USB Plot");

    XYSeriesCollection xySeriesCollection = new XYSeriesCollection();
    xySeries = new XYSeries("Value");

    xySeriesCollection.addSeries(xySeries);
    ChartPanel chartPanel = constructChart(xySeriesCollection);

    add(chartPanel, BorderLayout.CENTER);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    pack();
    setLocationRelativeTo(null);
}

From source file:fr.crnan.videso3d.ihm.TrajectoryProjectionGUI.java

public TrajectoryProjectionGUI(List<VidesoTrack> tracks, Globe globe) {

    JMenuBar menuBar = new JMenuBar();
    setJMenuBar(menuBar);//from  w w  w  . jav a  2s .c  om

    JMenu mnParamtres = new JMenu("Paramtres");
    menuBar.add(mnParamtres);

    JMenuItem mntmNewMenuItem = new JMenuItem("New menu item");
    mnParamtres.add(mntmNewMenuItem);

    double ref = TracksStatsProducer.computeReferenceAltitude(tracks);
    XYSeriesCollection dataset = new XYSeriesCollection();

    for (VidesoTrack t : tracks) {
        dataset.addSeries(TracksStatsProducer.computeDevelopedPath(t, ref, false, globe));
    }

    JFreeChart chart = ChartFactory.createXYLineChart("Projection", "Distance (NM)", "Altitude (FL)", dataset,
            PlotOrientation.VERTICAL, false, true, false);

    ChartPanel panel = new ChartPanel(chart);
    setContentPane(panel);
    pack();
}

From source file:fr.ign.cogit.geoxygene.sig3d.gui.window.result.DissimilarityCalculationDialog.java

/**
 * Affiche un graphique  l'aide de 2 nuages de points
 * // w  w w . j  ava2s  . co  m
 * @param title the frame title.
 */
public DissimilarityCalculationDialog(final String title, IDirectPositionList dpl1, IDirectPositionList dpl2) {

    super();
    final XYSeries series = new XYSeries("Objet 1");
    int nbElem = dpl1.size();

    for (int i = 0; i < nbElem - 1; i++) {

        series.add((dpl1.get(i + 1).getX() + dpl1.get(i).getX()) / 2, dpl1.get(i).getY());

    }

    final XYSeries series2 = new XYSeries("Objet 2");
    int nbElem2 = dpl2.size();

    for (int i = 0; i < nbElem2 - 1; i++) {

        series2.add((dpl2.get(i + 1).getX() + dpl2.get(i).getX()) / 2, dpl2.get(i).getY());

    }

    double valeur = 0;
    // Affiche la diffrence en norme L2 des 2 graphiques
    for (int i = 0; i < nbElem; i++) {

        valeur = valeur + Math.pow(dpl1.get(i).getY() - dpl2.get(i).getY(), 2);

    }

    valeur = Math.sqrt(valeur) / (1024 * 512);

    final XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series);
    dataset.addSeries(series2);

    final JFreeChart chart = ChartFactory.createXYLineChart("XY Series Demo", "Distance : " + valeur,
            Messages.getString("Result.PointFD"), dataset, PlotOrientation.VERTICAL, true, true, false);

    final ChartPanel chartPanel = new ChartPanel(chart);

    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    this.setContentPane(chartPanel);

}

From source file:ip.ui.plot.PlotGenerator.java

public void generateResultsChart(ResultsPlotData data, String fileName) throws IOException {
    XYSeries expectedData = new XYSeries("Expected output");
    XYSeries networkData = new XYSeries("Network output");

    List<double[]> inputs = new ArrayList(data.getInputs().size());
    data.getInputs().stream().forEach((InputRow row) -> {
        inputs.add(row.getValues());/*from w w  w  .j a v  a2 s  .com*/
    });

    List<double[]> expectedOutputs = new ArrayList(data.getInputs().size());
    data.getInputs().stream().forEach((InputRow row) -> {
        expectedOutputs.add(row.getExpectedOutput());
    });

    List<double[]> outputs = data.getOutputs();

    for (int i = 0; i < inputs.size(); ++i) {
        expectedData.add(inputs.get(i)[0], expectedOutputs.get(i)[0]);
        networkData.add(inputs.get(i)[0], outputs.get(i)[0]);
    }

    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(expectedData);
    dataset.addSeries(networkData);
    JFreeChart chart = ChartFactory.createXYLineChart(data.getPlotName(), data.getxAxisLabel(),
            data.getyAxisLabel(), dataset, PlotOrientation.VERTICAL, true, true, true);

    XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
    renderer.setSeriesLinesVisible(0, false);
    renderer.setSeriesLinesVisible(1, false);
    chart.getXYPlot().setRenderer(renderer);

    File XYChart = new File(fileName);
    ChartUtilities.saveChartAsJPEG(XYChart, chart, chartWidth, chartHeight);
}

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

/**
 * Creates a new demo.//ww w.ja  va2  s.c om
 *
 * @param title  the frame title.
 */
public XYLogAxesDemo(final String title) {

    super(title);

    //Object[][][] data = new Object[3][50][2];
    final XYSeries s1 = new XYSeries("Series 1");
    final XYSeries s2 = new XYSeries("Series 2");
    final XYSeries s3 = new XYSeries("Series 3");

    //        for (int i = 1; i <= 50; i++) {
    //            s1.add(i, 1000 * Math.pow(i, -2));
    //            s2.add(i, 1000 * Math.pow(i, -3));
    //            s3.add(i, 1000 * Math.pow(i, -4));
    //        }

    for (int i = 1; i <= 50; i++) {
        s1.add(i, 10 * Math.exp(i / 5.0));
        s2.add(i, 20 * Math.exp(i / 5.0));
        s3.add(i, 30 * Math.exp(i / 5.0));
    }

    final XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(s1);
    dataset.addSeries(s2);
    dataset.addSeries(s3);

    final JFreeChart chart = ChartFactory.createXYLineChart("Log Axis Demo", // chart title
            "Category", // domain axis label
            "Value", // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, true, // include legend
            true, false);

    final XYPlot plot = chart.getXYPlot();
    final NumberAxis domainAxis = new NumberAxis("x");
    final NumberAxis rangeAxis = new LogarithmicAxis("Log(y)");
    plot.setDomainAxis(domainAxis);
    plot.setRangeAxis(rangeAxis);
    chart.setBackgroundPaint(Color.white);
    plot.setOutlinePaint(Color.black);
    final ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);

}

From source file:netplot.XYPlotPanel.java

public void addPlot() {
    int plotIndex = xySeriesList.size();
    XYSeries xySeries = new XYSeries(plotName);
    xySeriesList.add(xySeries);//from w  w  w  .  j  av  a2  s . c  o  m

    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(xySeries);
    ((XYPlot) chart.getPlot()).setDataset(plotIndex, (XYDataset) dataset);
    genericConfig(chart, (XYPlot) chart.getPlot(), plotIndex);
    itemCountList.add(new Integer(0));
}

From source file:correospingtelnet.CorreosPingTelnet.java

private void mainAnterior() throws Exception {
    //JFreeChart chart; 
    //chart = createPlot();         
    //ChartUtilities.saveChartAsPNG(new File("imagen.png"), chart, 1000, 600);

    // request//from w  w w .ja  v  a  2 s . c  o m
    final IcmpPingRequest request = IcmpPingUtil.createIcmpPingRequest();
    request.setHost("192.168.1.5");

    final XYSeries google = new XYSeries("Ping a google");
    // repeat a few times
    for (int count = 1; count <= 1; count++) {

        // delegate
        final IcmpPingResponse response = IcmpPingUtil.executePingRequest(request);

        // log
        final String formattedResponse = IcmpPingUtil.formatResponse(response);
        System.out.println(formattedResponse);
        //Aqu tomaremos el valor de los ms y los guardaremos en un arreglo. 
        String[] splitStr = formattedResponse.split("\\s+");
        int valor = 0;
        if (splitStr.length > 5) {
            //Quitamos los ms
            char[] cadenaEnChars = splitStr[4].toCharArray();
            if (cadenaEnChars.length == 8) {
                valor = Integer.parseInt(Character.toString(cadenaEnChars[5]));
            } else {
                valor = Integer
                        .parseInt(Character.toString(cadenaEnChars[5]) + Character.toString(cadenaEnChars[6]));
            }

        } else {
            //Aqu hacer telnet
            //Aqu enviar correo             
            Telnet.doTelnet("64.62.142.154");
            valor = 0;
        }

        google.add(count, valor);

        // rest
        Thread.sleep(1000);
    }

    final XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(google);

    JFreeChart xylineChart = ChartFactory.createXYLineChart("Grfica de ping", "Ping #", "ms", dataset,
            PlotOrientation.VERTICAL, true, true, false);

    ChartUtilities.saveChartAsPNG(new File("imagen.png"), xylineChart, 1000, 600);
}

From source file:ui.FitnessGraph.java

/**
 * Creates a sample dataset./*from   w ww . jav a2  s . co  m*/
 *
 * @return a sample dataset.
 */
private XYDataset createDataset(ArrayList<Double> data) {

    final XYSeries series1 = new XYSeries("fitness");
    for (int i = 0; i < data.size() - 1; i++) {

        double p = data.get(i);
        series1.add(i, p);
    }

    final XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series1);

    return dataset;

}

From source file:com.spotify.heroic.http.render.RenderUtils.java

public static JFreeChart createChart(final List<ShardedResultGroup> groups, final String title,
        Map<String, String> highlight, Double threshold, int height) {
    final XYLineAndShapeRenderer lineAndShapeRenderer = new XYLineAndShapeRenderer(true, true);
    final DeviationRenderer intervalRenderer = new DeviationRenderer();

    final XYSeriesCollection regularData = new XYSeriesCollection();
    final YIntervalSeriesCollection intervalData = new YIntervalSeriesCollection();

    int lineAndShapeCount = 0;
    int intervalCount = 0;

    for (final ShardedResultGroup resultGroup : groups) {
        final MetricCollection group = resultGroup.getMetrics();

        if (group.getType() == MetricType.POINT) {
            final XYSeries series = new XYSeries(resultGroup.getMetrics().toString());

            final List<Point> data = group.getDataAs(Point.class);

            for (final Point d : data) {
                series.add(d.getTimestamp(), d.getValue());
            }//from  www  .j av a  2 s . c  o  m

            lineAndShapeRenderer.setSeriesPaint(lineAndShapeCount, Color.BLUE);
            lineAndShapeRenderer.setSeriesShapesVisible(lineAndShapeCount, false);
            lineAndShapeRenderer.setSeriesStroke(lineAndShapeCount, new BasicStroke(2.0f));
            regularData.addSeries(series);
            ++lineAndShapeCount;
        }

        if (group.getType() == MetricType.SPREAD) {
            final YIntervalSeries series = new YIntervalSeries(resultGroup.getMetrics().toString());

            final List<Spread> data = group.getDataAs(Spread.class);

            for (final Spread d : data) {
                series.add(d.getTimestamp(), d.getSum() / d.getCount(), d.getMin(), d.getMax());
            }

            intervalRenderer.setSeriesPaint(intervalCount, Color.GREEN);
            intervalRenderer.setSeriesStroke(intervalCount, new BasicStroke(2.0f));
            intervalRenderer.setSeriesFillPaint(intervalCount, new Color(200, 255, 200));
            intervalRenderer.setSeriesShapesVisible(intervalCount, false);
            intervalData.addSeries(series);
            ++intervalCount;
        }
    }

    final JFreeChart chart = buildChart(title, regularData, intervalData, lineAndShapeRenderer,
            intervalRenderer);

    chart.setAntiAlias(true);
    chart.setBackgroundPaint(Color.WHITE);

    final XYPlot plot = chart.getXYPlot();

    plot.setBackgroundPaint(Color.WHITE);
    plot.setDomainGridlinePaint(Color.BLACK);
    plot.setRangeGridlinePaint(Color.BLACK);

    if (threshold != null) {
        final ValueMarker marker = new ValueMarker(threshold, Color.RED,
                new BasicStroke(Math.max(Math.min(height / 20, 6), 1)), Color.RED, null, 0.5f);
        plot.addRangeMarker(marker);
    }

    plot.setRenderer(lineAndShapeRenderer);

    // final DateAxis rangeAxis = (DateAxis) plot.getRangeAxis();
    // rangeAxis.setStandardTickUnits(DateAxis.createStandardDateTickUnits());

    return chart;
}