⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demodatasetfactory.java

📁 大家打开看看啊, 很有用的东西
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
/* ======================================
 * JFreeChart : a free Java chart library
 * ======================================
 *
 * Project Info:  http://www.jfree.org/jfreechart/index.html
 * Project Lead:  David Gilbert (david.gilbert@object-refinery.com);
 *
 * (C) Copyright 2000-2003, by Object Refinery Limited and Contributors.
 *
 * This library is free software; you can redistribute it and/or modify it under the terms
 * of the GNU Lesser General Public License as published by the Free Software Foundation;
 * either version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License along with this
 * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
 * Boston, MA 02111-1307, USA.
 *
 * -----------------------
 * DemoDatasetFactory.java
 * -----------------------
 * (C) Copyright 2001-2003, by Object Refinery Limited.
 *
 * Original Author:  David Gilbert (for Object Refinery Limited);
 * Contributor(s):   Bryan Scott;
 *                   Bill Kelemen;
 *                   David Browning;
 *
 * $Id: DemoDatasetFactory.java,v 1.9 2003/08/05 09:31:54 mungady Exp $
 *
 * Changes
 * -------
 * 10-Dec-2001 : Version 1 (DG);
 * 15-Mar-2002 : Added createHighLowOpenCloseDataset() method (DG);
 * 20-Jun-2002 : Added createMeterDataset() method (BRS);
 * 24-Jun-2002 : Moved createGanttDataset() method from GanttDemo (BRS);
 * 10-Oct-2002 : Fixed errors reported by Checkstyle (DG);
 * 24-May-2003 : Added createSegmentedHighLowDataset(..) (BK);
 * 05-Aug-2003 : Added createBoxAndWhiskerDataset() method (DB);
 *
 */

package org.jfree.chart.demo;

import java.util.Calendar;
import java.util.Date;

import org.jfree.chart.axis.SegmentedTimeline;
import org.jfree.data.BoxAndWhiskerDataset;
import org.jfree.data.CategoryDataset;
import org.jfree.data.DatasetUtilities;
import org.jfree.data.DefaultBoxAndWhiskerDataset;
import org.jfree.data.DefaultHighLowDataset;
import org.jfree.data.DefaultMeterDataset;
import org.jfree.data.DefaultWindDataset;
import org.jfree.data.HighLowDataset;
import org.jfree.data.IntervalCategoryDataset;
import org.jfree.data.SignalsDataset;
import org.jfree.data.Task;
import org.jfree.data.TaskSeries;
import org.jfree.data.TaskSeriesCollection;
import org.jfree.data.WindDataset;
import org.jfree.data.XYDataset;
import org.jfree.data.XYSeries;
import org.jfree.data.XYSeriesCollection;
import org.jfree.data.time.Day;
import org.jfree.data.time.FixedMillisecond;
import org.jfree.data.time.SimpleTimePeriod;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.data.time.Year;
import org.jfree.date.DateUtilities;
import org.jfree.date.SerialDate;

/**
 * A utility class for generating sample datasets for the demos.
 * <p>
 * These datasets are hard-coded so that they are easily accessible for the demonstration
 * applications.  In a real application, you would create datasets dynamically by reading data from
 * a file, a database, or some other source.
 *
 * @author David Gilbert
 */
public class DemoDatasetFactory {

    /**
     * To prevent (unnecessary) instantiation.
     */
    private DemoDatasetFactory() {
    }
    
    /**
     * Creates and returns a {@link CategoryDataset} for the demo charts.
     *
     * @return a sample dataset.
     */
    public static CategoryDataset createCategoryDataset() {

        double[][] data = new double[][]
            {{10.0, 4.0, 15.0, 14.0},
             {-5.0, -7.0, 14.0, -3.0},
             {6.0, 17.0, -12.0, 7.0},
             {7.0, 15.0, 11.0, 0.0},
             {-8.0, -6.0, 10.0, -9.0},
             {9.0, 8.0, 0.0, 6.0},
             {-10.0, 9.0, 7.0, 7.0},
             {11.0, 13.0, 9.0, 9.0},
             {-3.0, 7.0, 11.0, -10.0}};

        return DatasetUtilities.createCategoryDataset("Series ", "Category ", data);

    }

    /**
     * Creates and returns a category dataset with JUST ONE CATEGORY for the demo charts.
     *
     * @return a sample category dataset.
     */
    public static CategoryDataset createSingleCategoryDataset() {

        Number[][] data = new Integer[][]
            {{new Integer(10)},
             {new Integer(-5)},
             {new Integer(6)},
             {new Integer(7)},
             {new Integer(-8)},
             {new Integer(9)},
             {new Integer(-10)},
             {new Integer(11)},
             {new Integer(-3)}};

        return DatasetUtilities.createCategoryDataset("Series ", "Category ", data);

    }

    /**
     * Creates and returns a category dataset for the demo charts.
     *
     * @return a sample category dataset.
     */
    public static CategoryDataset createSingleSeriesCategoryDataset() {

        double[][] data = new double[][] {{10.0, -4.0, 15.0, 14.0}};

        return DatasetUtilities.createCategoryDataset("Series ", "Category ", data);

    }

    /**
     * Returns a null interval category dataset.
     *
     * @return null.
     */
    public static IntervalCategoryDataset createIntervalCategoryDataset() {

        return null;

    }

    /**
     * Returns a sample XY dataset.
     *
     * @return a sample XY dataset.
     */
    public static XYDataset createSampleXYDataset() {
        return new SampleXYDataset();
    }

    /**
     * Creates and returns a sample dataset for the XY 'Step' chart.
     *
     * @return the sample dataset.
     */
    public static XYDataset createStepXYDataset() {

        int feb = 2;
        XYSeries s1 = new XYSeries("Plan 1");
        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);

        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);

        XYSeriesCollection dataset = new XYSeriesCollection();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -