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, boolean autoSort, boolean allowDuplicateXValues) 

Source Link

Document

Constructs a new xy-series that contains no data.

Usage

From source file:edu.ucsf.valelab.saim.data.IntensityData.java

/**
 * Returns data in a form usable by the JFreeChart library
 * @param name of the data series in JFreeChart
 * @return JFreeChart XYSeries//from   w w  w.  j a v  a 2  s  .c o  m
 */
public XYSeries getXYSeries(String name) {
    XYSeries series = new XYSeries(name, false, false);
    for (IntensityDataItem item : data_) {
        series.add(item.getAngleDegree(), item.getIntensity());
    }
    return series;
}

From source file:org.xwiki.chart.internal.plot.AbstractXYPlotGenerator.java

/**
 * Extracts data rows from the {@link ChartModel} provided and populates the {@link DefaultTableXYDataset}
 * accordingly./* w w w .j  a va 2 s .  c o m*/
 * 
 * @param model the {@link ChartModel} instance.
 * @param dataset the {@link DefaultTableXYDataset} to be populated.
 */
private void extractRows(DefaultTableXYDataset dataset, ChartModel model) {
    for (int row = 0; row < model.getRowCount(); row++) {
        XYSeries series = new XYSeries(model.getRowHeader(row), false, false);
        for (int column = 0; column < model.getColumnCount(); column++) {
            series.add(column, model.getCellValue(row, column));
        }
        dataset.addSeries(series);
    }
}

From source file:playground.dgrether.analysis.charts.DgTravelTimeCalculatorChart.java

public void addLinkId(List<Id<Link>> ids) {
    StringBuilder title = new StringBuilder();
    title.append("Link");
    for (Id<Link> id : ids) {
        title.append(" ");
        title.append(id);//from   www. j  a v  a2  s . c o  m
    }
    this.linkIds.put(ids, new XYSeries(title.toString(), false, false));
}

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

/**
 * Creates and returns a sample dataset for the XY 'Step' chart.
 *
 * @return the sample dataset./* w  w  w  .j  a  v a  2  s .co m*/
 */
public static XYDataset createStepXYDataset() {

    final int feb = 2;
    final XYSeries s1 = new XYSeries("Plan 1", false, true);
    s1.add(DateUtilities.createDate(2002, feb, 19, 8, 0).getTime(), 0);
    s1.add(DateUtilities.createDate(2002, feb, 19, 8, 1).getTime(), 2);
    s1.add(DateUtilities.createDate(2002, feb, 19, 9, 5).getTime(), 4);
    s1.add(DateUtilities.createDate(2002, feb, 19, 10, 6).getTime(), 4);
    s1.add(DateUtilities.createDate(2002, feb, 19, 11, 6).getTime(), 5);
    s1.add(DateUtilities.createDate(2002, feb, 19, 12, 6).getTime(), 3);
    s1.add(DateUtilities.createDate(2002, feb, 19, 13, 6).getTime(), 6);
    s1.add(DateUtilities.createDate(2002, feb, 19, 14, 6).getTime(), 6);
    s1.add(DateUtilities.createDate(2002, feb, 19, 15, 30).getTime(), 2);
    s1.add(DateUtilities.createDate(2002, feb, 19, 16, 7).getTime(), 0);

    final XYSeries s2 = new XYSeries("Plan 2");
    s2.add(DateUtilities.createDate(2002, feb, 19, 8, 40).getTime(), 0);
    s2.add(DateUtilities.createDate(2002, feb, 19, 8, 45).getTime(), 1);
    s2.add(DateUtilities.createDate(2002, feb, 19, 9, 0).getTime(), 6);
    s2.add(DateUtilities.createDate(2002, feb, 19, 10, 6).getTime(), 2);
    s2.add(DateUtilities.createDate(2002, feb, 19, 10, 45).getTime(), 4);
    s2.add(DateUtilities.createDate(2002, feb, 19, 12, 0).getTime(), 7);
    s2.add(DateUtilities.createDate(2002, feb, 19, 13, 0).getTime(), 5);
    s2.add(DateUtilities.createDate(2002, feb, 19, 14, 6).getTime(), 4);
    s2.add(DateUtilities.createDate(2002, feb, 19, 15, 15).getTime(), 4);
    s2.add(DateUtilities.createDate(2002, feb, 19, 16, 0).getTime(), 0);

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

From source file:playground.dgrether.analysis.charts.DgAvgDeltaUtilsQuantilesChart.java

private Tuple<XYSeries, List<String>> createXYSeries(String title, DgAnalysisPopulation pop, String runId1,
        String runId2) {/*w  w w.  j ava2s. c o  m*/
    List<DgAnalysisPopulation> quantiles = pop.getQuantiles(this.nQuantiles,
            new DgPersonDataIncomeComparator());
    XYSeries series = new XYSeries(title, false, true);
    List<String> labels = new ArrayList<String>();
    double income = 0.0;
    double i = -0.5;
    for (DgAnalysisPopulation p : quantiles) {
        i++;
        Double avgScore = p.calcAverageScoreDifference(runId1, runId2);
        p.calculateIncomeData();
        income += p.getTotalIncome();
        double incomeLocation = 100.0 * i / this.nQuantiles;
        series.add(incomeLocation, avgScore);
        labels.add("Groupsize: " + p.getPersonData().size());
    }
    return new Tuple<XYSeries, List<String>>(series, labels);
}

From source file:org.jfree.data.xy.junit.DefaultTableXYDatasetTest.java

/**
 * Confirm that the equals method can distinguish all the required fields.
 *//*from  w ww.jav  a  2s.  c om*/
public void testEquals() {

    DefaultTableXYDataset d1 = new DefaultTableXYDataset();
    XYSeries s1 = new XYSeries("Series 1", true, false);
    s1.add(1.0, 1.1);
    s1.add(2.0, 2.2);
    d1.addSeries(s1);

    DefaultTableXYDataset d2 = new DefaultTableXYDataset();
    XYSeries s2 = new XYSeries("Series 1", true, false);
    s2.add(1.0, 1.1);
    s2.add(2.0, 2.2);
    d2.addSeries(s2);

    assertTrue(d1.equals(d2));
    assertTrue(d2.equals(d1));

    s1.add(3.0, 3.3);
    assertFalse(d1.equals(d2));

    s2.add(3.0, 3.3);
    assertTrue(d1.equals(d2));

}

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

/**
 * Creates a new demo.//from  w  w w.j a v  a2s  . c  o m
 *
 * @param title  the frame title.
 */
public StackedXYAreaChartDemo(final String title) {

    super(title);

    final SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy", Locale.UK);
    final XYSeries series1 = new XYSeries("Series 1", true, false);
    final XYSeries series2 = new XYSeries("Series 2", true, false);
    final XYSeries series3 = new XYSeries("Series 3", true, false);
    try {
        series1.add(sdf.parse("03-Jul-2003").getTime(), 115);
        series1.add(sdf.parse("04-Jul-2003").getTime(), 120);
        series1.add(sdf.parse("07-Jul-2003").getTime(), 125);
        series1.add(sdf.parse("08-Jul-2003").getTime(), 160);
        series1.add(sdf.parse("09-Jul-2003").getTime(), 175);
        series1.add(sdf.parse("10-Jul-2003").getTime(), 140);
        series1.add(sdf.parse("11-Jul-2003").getTime(), 145);
        series1.add(sdf.parse("14-Jul-2003").getTime(), 150);
        series1.add(sdf.parse("15-Jul-2003").getTime(), 155);
        series1.add(sdf.parse("16-Jul-2003").getTime(), 160);
        series1.add(sdf.parse("17-Jul-2003").getTime(), 165);
        series1.add(sdf.parse("18-Jul-2003").getTime(), 170);

        series2.add(sdf.parse("30-Jun-2003").getTime(), 50);
        series2.add(sdf.parse("01-Jul-2003").getTime(), 60);
        series2.add(sdf.parse("02-Jul-2003").getTime(), 70);
        series2.add(sdf.parse("03-Jul-2003").getTime(), 80);
        series2.add(sdf.parse("04-Jul-2003").getTime(), 90);
        series2.add(sdf.parse("07-Jul-2003").getTime(), 100);
        series2.add(sdf.parse("08-Jul-2003").getTime(), 110);
        series2.add(sdf.parse("09-Jul-2003").getTime(), 120);
        series2.add(sdf.parse("10-Jul-2003").getTime(), 130);
        series2.add(sdf.parse("11-Jul-2003").getTime(), 140);
        series2.add(sdf.parse("14-Jul-2003").getTime(), 150);
        series2.add(sdf.parse("15-Jul-2003").getTime(), 160);
        series2.add(sdf.parse("16-Jul-2003").getTime(), 170);
        series2.add(sdf.parse("17-Jul-2003").getTime(), 180);
        series2.add(sdf.parse("18-Jul-2003").getTime(), 190);

        series3.add(sdf.parse("30-Jun-2003").getTime(), 100);
        series3.add(sdf.parse("01-Jul-2003").getTime(), 120);
        series3.add(sdf.parse("02-Jul-2003").getTime(), 110);
        series3.add(sdf.parse("03-Jul-2003").getTime(), 120);
        series3.add(sdf.parse("04-Jul-2003").getTime(), 130);
        series3.add(sdf.parse("07-Jul-2003").getTime(), 135);
        series3.add(sdf.parse("08-Jul-2003").getTime(), 140);
        series3.add(sdf.parse("09-Jul-2003").getTime(), 155);
        series3.add(sdf.parse("10-Jul-2003").getTime(), 130);
        series3.add(sdf.parse("11-Jul-2003").getTime(), 135);
        series3.add(sdf.parse("14-Jul-2003").getTime(), 140);
        series3.add(sdf.parse("15-Jul-2003").getTime(), 165);
        series3.add(sdf.parse("16-Jul-2003").getTime(), 170);
        series3.add(sdf.parse("17-Jul-2003").getTime(), 165);
        series3.add(sdf.parse("18-Jul-2003").getTime(), 140);
    } catch (ParseException e) {
        //  Not likely, given that the dates are hard-coded
        e.printStackTrace();
    }
    final DefaultTableXYDataset dataset = new DefaultTableXYDataset();
    dataset.addSeries(series1);
    dataset.addSeries(series2);
    dataset.addSeries(series3);

    final JFreeChart chart = createChart(dataset);

    final ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);

}

From source file:DynamiskDemo2.java

/**
 * Constructs a new demonstration application.
 *
 * @param title  the frame title.//  ww  w.  j ava  2s . com
 */
public DynamiskDemo2(final String title) {

    super(title);
    this.series = new XYSeries(title, false, false);
    final XYSeriesCollection dataset = new XYSeriesCollection(this.series);
    final JFreeChart chart = createChart(dataset);

    final ChartPanel chartPanel = new ChartPanel(chart);
    final JButton button = new JButton("Add New Data Item");
    button.setActionCommand("ADD_DATA");
    button.addActionListener(this);

    final JPanel content = new JPanel(new BorderLayout());
    content.add(chartPanel);
    content.add(button, BorderLayout.SOUTH);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(content);
    String fil = "C:" + File.separator + "Users" + File.separator + "madso" + File.separator + "Documents"
            + File.separator + "!Privat" + File.separator + "DTU 2016-2020" + File.separator + "MATLAB";
    String filnavn = "EKGdata";
    try {
        Scanner sc = new Scanner(new FileReader(fil + File.separator + filnavn));

        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new TimerTask() {

            @Override
            public void run() {
                if (sc.hasNext()) {
                    final double newItem = Double.parseDouble(sc.next());
                    series.add(x, newItem);
                    x += 10;
                }
            }

        }, 100, 2);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:org.jfree.data.xy.DefaultTableXYDatasetTest.java

/**
 * Confirm that cloning works.//from  w  w  w  .j  a  v a  2s . co m
 */
@Test
public void testCloning() throws CloneNotSupportedException {
    DefaultTableXYDataset d1 = new DefaultTableXYDataset();
    XYSeries s1 = new XYSeries("Series 1", true, false);
    s1.add(1.0, 1.1);
    s1.add(2.0, 2.2);
    d1.addSeries(s1);

    DefaultTableXYDataset d2 = (DefaultTableXYDataset) d1.clone();

    assertTrue(d1 != d2);
    assertTrue(d1.getClass() == d2.getClass());
    assertTrue(d1.equals(d2));

    s1.add(3.0, 3.3);
    assertFalse(d1.equals(d2));
}

From source file:playground.dgrether.analysis.charts.DgAvgDeltaMoneyQuantilesChart.java

protected Tuple<XYSeries, List<String>> createXYSeries(String title, DgAnalysisPopulation pop, String runId1,
        String runId2) {//from  w  w  w .  j  ava  2  s  .  com
    List<DgAnalysisPopulation> quantiles = this.ana.getQuantiles(this.nQuantiles,
            new DgPersonDataIncomeComparator());
    XYSeries series = new XYSeries(title, false, true);
    List<String> labels = new ArrayList<String>();
    for (DgAnalysisPopulation p : quantiles) {
        Double avgScore = IncomeChartUtils.calcAverageMoneyDifference(p, 0, runId1, runId2);
        p.calculateMinMaxIncome();
        if (avgScore != null) {
            double incomeLocation = p.getMinIncome() + ((p.getMaxIncome() - p.getMinIncome()) / 2.0);
            series.add(incomeLocation, avgScore);
            labels.add("Groupsize: " + p.getPersonData().size());
        }
    }
    return new Tuple<XYSeries, List<String>>(series, labels);
}