Example usage for org.jfree.data.xy XYSeries XYSeries

List of usage examples for org.jfree.data.xy XYSeries XYSeries

Introduction

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

Prototype

public XYSeries(Comparable key) 

Source Link

Document

Creates a new empty series.

Usage

From source file:api3.transform.PlotWave.java

public void plot(double[][] signal, String name, long samplerate) {

    frame.setTitle(name);//w  ww .  j ava 2s. co  m

    XYSeries[] soundWave = new XYSeries[signal.length];
    for (int j = 0; j < signal.length; ++j) {
        soundWave[j] = new XYSeries("sygnal" + j);
        for (int i = 0; i < signal[0].length; ++i) {
            double index = (samplerate == 0) ? i : 1000.0 * (double) i / (double) samplerate;
            soundWave[j].add(index, signal[j][i]);
        }
    }

    XYSeriesCollection dataset = new XYSeriesCollection();
    for (int j = 0; j < signal.length; ++j) {
        dataset.addSeries(soundWave[j]);
    }

    JFreeChart chart = //            (samplerate ==0 )?
            //            ChartFactory.createXYBarChart(
            //            name,
            //            "prbka",
            //            false,
            //            "warto",
            //            new XYBarDataset(dataset,0.0625),
            //            PlotOrientation.VERTICAL,
            //            true,false,false)
            //            :
            ChartFactory.createXYLineChart(name, "prbka", "warto", dataset,
                    PlotOrientation.VERTICAL, true, false, false);

    XYPlot plot = (XYPlot) chart.getPlot();

    final NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();

    slider.addChangeListener(new ChangeListener() {

        @Override
        public void stateChanged(ChangeEvent event) {
            int value = slider.getValue();
            double minimum = domainAxis.getRange().getLowerBound();
            double maximum = domainAxis.getRange().getUpperBound();
            double delta = (0.1f * (domainAxis.getRange().getLength()));
            if (value < lastValue) { // left
                minimum = minimum - delta;
                maximum = maximum - delta;
            } else { // right
                minimum = minimum + delta;
                maximum = maximum + delta;
            }
            DateRange range = new DateRange(minimum, maximum);
            domainAxis.setRange(range);
            lastValue = value;
            if (lastValue == slider.getMinimum() || lastValue == slider.getMaximum()) {
                slider.setValue(SLIDER_DEFAULT_VALUE);
            }
        }

    });

    plot.addRangeMarker(new ValueMarker(0, Color.BLACK, new BasicStroke(1)));

    ChartPanel chartPanel = new ChartPanel(chart);
    Border border = BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4),
            BorderFactory.createEtchedBorder());
    chartPanel.setBorder(border);

    chartPanel.addMouseWheelListener(addZoomWheel());

    panel.add(chartPanel);
    JPanel dashboard = new JPanel(new BorderLayout());
    dashboard.setBorder(BorderFactory.createEmptyBorder(0, 4, 4, 4));
    dashboard.add(slider);
    panel.add(dashboard, BorderLayout.SOUTH);

    frame.getContentPane().add((JPanel) panel, BorderLayout.CENTER);

    frame.pack();
    frame.setVisible(true);
}

From source file:com.att.aro.ui.view.diagnostictab.plot.CpuPlot.java

@Override
public void populate(XYPlot plot, AROTraceData analysis) {
    XYSeries series = new XYSeries(0);
    if (analysis == null) {
        logger.info("didn't get analysis trace data!");
    } else {// www.  j  av a2s.co m
        TraceResultType resultType = analysis.getAnalyzerResult().getTraceresult().getTraceResultType();
        if (resultType.equals(TraceResultType.TRACE_FILE)) {
            logger.info("didn't get analysis trace folder!");

        } else {
            TraceDirectoryResult traceresult = (TraceDirectoryResult) analysis.getAnalyzerResult()
                    .getTraceresult();

            cpuAList = traceresult.getCpuActivityList();
            boolean filterByTime = cpuAList.isFilterByTime();
            double beginTime = 0;
            double endTime = 0;
            if (filterByTime) {
                beginTime = cpuAList.getBeginTraceTime();
                endTime = cpuAList.getEndTraceTime();
            }

            cpuData = cpuAList.getCpuActivities();
            logger.debug("Size of CPU data: " + cpuData.size());

            if (cpuData.size() > 0) {
                for (CpuActivity cpu : cpuData) {
                    if (filterByTime) {
                        //                     logger.debug("timestamp: {0}" + cpu.getTimeStamp());
                        if (cpu.getTimeStamp() >= beginTime && cpu.getTimeStamp() <= endTime) {
                            //                        logger.debug("CPU usage: {0}"+ cpu.getCpuUsageTotalFiltered());
                            series.add(cpu.getTimeStamp(), cpu.getCpuUsageTotalFiltered());
                        }

                    } else {
                        //                     logger.debug("CPU usage: {0}"+ cpu.getCpuUsageTotalFiltered());
                        series.add(cpu.getTimeStamp(), cpu.getCpuUsageTotalFiltered());
                    }
                }
            }

            // Assign ToolTip to renderer
            XYItemRenderer renderer = plot.getRenderer();

            renderer.setBaseToolTipGenerator(new XYToolTipGenerator() {
                @Override
                public String generateToolTip(XYDataset dataset, int series, int item) {
                    return constructCpuToolTipText(cpuAList, cpuData, item);
                }
            });

        }
    }
    plot.setDataset(new XYSeriesCollection(series));
    //      return plot;
}

From source file:br.com.ant.system.util.ChartUtil.java

public void createTempoTotalExecucao(Set<EstatisticaColetor> estatisticas) {

    // Create a simple XY chart
    XYSeries series = new XYSeries("Formiga");

    JFrame frame = new JFrame();

    for (EstatisticaColetor e : estatisticas) {
        series.add(e.getId(), e.getTempoExecucao());
    }/*from   www  .j av a 2  s. c om*/

    // Add the series to your data set
    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series);

    // Generate the graph
    JFreeChart chart = ChartFactory.createXYLineChart("Tempo total de Execuo", "Execuo", "Tempo (ms)",
            dataset, PlotOrientation.VERTICAL, true, true, false);
    frame.getContentPane().add(new ChartPanel(chart));

    frame.setPreferredSize(new Dimension(600, 600));
    frame.setMinimumSize(new Dimension(600, 600));
    frame.setMaximumSize(new Dimension(600, 600));
    frame.setVisible(true);

    try {
        ChartUtilities.saveChartAsJPEG(new File("chart.jpg"), chart, 500, 300);
    } catch (IOException e) {
        System.err.println("Problem occurred creating chart.");
    }
}

From source file:Graphing.graphXY.java

private XYDataset getDataSet() {
    XYSeriesCollection dataSet = new XYSeriesCollection();
    XYSeries series = new XYSeries(this.name);

    for (int i = 0; i < this.x.length; i++) {
        series.add(this.x[i], this.y[i]);
    }//from w  w w.j ava  2  s . co m

    dataSet.addSeries(series);

    return dataSet;
}

From source file:sanger.team16.gui.genevar.eqtl.snp.RegionalLinePlot.java

public void addToDataset(String population, List<QTL> qtls) {
    XYSeries series = new XYSeries(population);

    for (int i = 0; i < qtls.size(); i++) {
        QTL qtl = qtls.get(i);/*  w w w  .  ja  va2s  .com*/
        series.add(qtl.transcriptMapping.getProbeStart(), qtl.getMinusLog10P());
    } // CHANGED FROM getTranscriptionStartSite() 13/10/10 

    dataset.addSeries(series);
}

From source file:ui.FitnessGraph.java

/**
 * Creates a sample dataset./* w  w  w  . j a v a 2s.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:adept.utilities.Grapher.java

/**
 * Make time vs size graph.//from   w ww  .j a  v  a  2  s . c  o  m
 *
 * @param timevalues the timevalues
 * @param sizevalues the sizevalues
 * @param filename the filename
 * @param linelabel the linelabel
 * @param Xlabel the xlabel
 * @param Ylabel the ylabel
 * @param title the title
 */
public static void makeTimeVsSizeGraph(ArrayList<Double> timevalues, ArrayList<Double> sizevalues,
        File filename, String linelabel, String Xlabel, String Ylabel, String title) {
    try {

        XYSeriesCollection scatter_plot_dataset = new XYSeriesCollection();
        XYSeries data = new XYSeries(linelabel);
        for (int i = 0; i < sizevalues.size(); i++) {
            data.add(sizevalues.get(i), timevalues.get(i));
        }
        scatter_plot_dataset.addSeries(data);

        /* Step -2:Define the JFreeChart object to create line chart */
        JFreeChart scatterPlotObject = ChartFactory.createScatterPlot(Ylabel, Xlabel, title,
                scatter_plot_dataset, PlotOrientation.VERTICAL, true, true, false);

        /* Step -3 : Write line chart to a file */
        int width = 640; /* Width of the image */
        int height = 480; /* Height of the image */
        ChartUtilities.saveChartAsPNG(filename, scatterPlotObject, width, height);
    }

    catch (Exception e) {
        e.printStackTrace();
    }

}

From source file:cpsControllers.LineChartController.java

/**
 * Method for create line chart./*from   w  w  w. j  a  v  a  2  s .c  om*/
 * 
 * @param t
 * @param values
 * @return 
 */
public JFreeChart printChart2(ArrayList<Double> t, ArrayList<Double> values) {

    // Prepare the data set
    XYSeries xySeries = new XYSeries("Number & Square Chart");

    double[] val = new double[values.size()];
    for (int i = 0; i < val.length; i++) {
        xySeries.add(i, values.get(i));
    }

    XYDataset xyDataset = new XYSeriesCollection(xySeries);

    //Create the chart
    JFreeChart chart = ChartFactory.createXYLineChart("Wykres liniowy", "Czas (t)", "Aplituda (A)", xyDataset,
            PlotOrientation.VERTICAL, false, true, false);

    //    //Render the frame
    //    ChartFrame chartFrame = new ChartFrame("Wykres sygnalu ", chart);
    //    chartFrame.setVisible(true);
    //    chartFrame.setSize(800, 600);

    return chart;
}

From source file:org.ow2.clif.jenkins.chart.CallChart.java

public CallChart(String testplan, String bladeId, String event, ChartConfiguration chartConfiguration) {
    super("Call", bladeId, testplan, event, chartConfiguration);
    this.eventSerie = new XYSeries(event);
}

From source file:sanger.team16.gui.genevar.mqtl.snp.RegionalLinePlot.java

public void addToDataset(String population, List<QTL> qtls) {
    XYSeries series = new XYSeries(population);

    for (int i = 0; i < qtls.size(); i++) {
        QTL qtl = qtls.get(i);/*from   w w w .  j  a  v  a  2 s. c  o m*/
        series.add(qtl.modificationMapping.getProbeStart(), qtl.getMinusLog10P());
    } // CHANGED FROM getTranscriptionStartSite() 13/10/10 

    dataset.addSeries(series);
}