亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? defaulthighlowdataset.java

?? jfreechart1.0.1 jsp繪制圖表的開發包
?? JAVA
字號:
/* ===========================================================
 * JFreeChart : a free chart library for the Java(tm) platform
 * ===========================================================
 *
 * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors.
 *
 * Project Info:  http://www.jfree.org/jfreechart/index.html
 *
 * 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
 * USA.  
 *
 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 
 * in the United States and other countries.]
 *
 * --------------------------
 * DefaultHighLowDataset.java
 * --------------------------
 * (C) Copyright 2002-2005, by Object Refinery Limited.
 *
 * Original Author:  David Gilbert (for Object Refinery Limited);
 * Contributor(s):   -;
 *
 * $Id: DefaultHighLowDataset.java,v 1.6.2.1 2005/10/25 21:36:51 mungady Exp $
 *
 * Changes
 * -------
 * 21-Mar-2002 : Version 1 (DG);
 * 07-Oct-2002 : Fixed errors reported by Checkstyle (DG);
 * 06-May-2004 : Now extends AbstractXYDataset and added new methods from 
 *               HighLowDataset (DG);
 * 15-Jul-2004 : Switched getX() with getXValue() and getY() with 
 *               getYValue() (DG);
 *
 */

package org.jfree.data.xy;

import java.util.Date;

/**
 * A simple implementation of the {@link OHLCDataset}.
 */
public class DefaultHighLowDataset extends AbstractXYDataset 
                                   implements OHLCDataset {

    /** The series key. */
    private Comparable seriesKey;

    /** Storage for the dates. */
    private Date[] date;

    /** Storage for the high values. */
    private Number[] high;

    /** Storage for the low values. */
    private Number[] low;

    /** Storage for the open values. */
    private Number[] open;

    /** Storage for the close values. */
    private Number[] close;

    /** Storage for the volume values. */
    private Number[] volume;

    /**
     * Constructs a new high/low/open/close dataset.
     * <p>
     * The current implementation allows only one series in the dataset.
     * This may be extended in a future version.
     *
     * @param seriesKey  the key for the series.
     * @param date  the dates.
     * @param high  the high values.
     * @param low  the low values.
     * @param open  the open values.
     * @param close  the close values.
     * @param volume  the volume values.
     */
    public DefaultHighLowDataset(Comparable seriesKey,
                                 Date[] date,
                                 double[] high, final double[] low,
                                 double[] open, final double[] close,
                                 double[] volume) {

        this.seriesKey = seriesKey;
        this.date = date;
        this.high = createNumberArray(high);
        this.low = createNumberArray(low);
        this.open = createNumberArray(open);
        this.close = createNumberArray(close);
        this.volume = createNumberArray(volume);

    }

    /**
     * Returns the for the series stored in this dataset.
     *
     * @param i  the index of the series. Currently ignored.
     * 
     * @return The key for this series.
     */
    public Comparable getSeriesKey(int i) {
        return this.seriesKey;
    }

    /**
     * Returns the x-value for one item in a series.  The value returned is a 
     * <code>Long</code> instance generated from the underlying 
     * <code>Date</code> object.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The x-value.
     */
    public Number getX(int series, int item) {
        return new Long(this.date[item].getTime());
    }

    /**
     * Returns the x-value for one item in a series, as a Date.
     * <p>
     * This method is provided for convenience only.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The x-value as a Date.
     */
    public Date getXDate(int series, int item) {
        return this.date[item];
    }

    /**
     * Returns the y-value for one item in a series.
     * <p>
     * This method (from the {@link XYDataset} interface) is mapped to the 
     * {@link #getCloseValue(int, int)} method.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The y-value.
     */
    public Number getY(int series, int item) {
        return getClose(series, item);
    }

    /**
     * Returns the high-value for one item in a series.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The high-value.
     */
    public Number getHigh(int series, int item) {
        return this.high[item];
    }

    /**
     * Returns the high-value (as a double primitive) for an item within a 
     * series.
     * 
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     * 
     * @return The high-value.
     */
    public double getHighValue(int series, int item) {
        double result = Double.NaN;
        Number high = getHigh(series, item);
        if (high != null) {
            result = high.doubleValue();   
        }
        return result;   
    }

    /**
     * Returns the low-value for one item in a series.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The low-value.
     */
    public Number getLow(int series, int item) {
        return this.low[item];
    }

    /**
     * Returns the low-value (as a double primitive) for an item within a 
     * series.
     * 
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     * 
     * @return The low-value.
     */
    public double getLowValue(int series, int item) {
        double result = Double.NaN;
        Number low = getLow(series, item);
        if (low != null) {
            result = low.doubleValue();   
        }
        return result;   
    }

    /**
     * Returns the open-value for one item in a series.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The open-value.
     */
    public Number getOpen(int series, int item) {
        return this.open[item];
    }

    /**
     * Returns the open-value (as a double primitive) for an item within a 
     * series.
     * 
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     * 
     * @return The open-value.
     */
    public double getOpenValue(int series, int item) {
        double result = Double.NaN;
        Number open = getOpen(series, item);
        if (open != null) {
            result = open.doubleValue();   
        }
        return result;   
    }

    /**
     * Returns the close-value for one item in a series.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The close-value.
     */
    public Number getClose(int series, int item) {
        return this.close[item];
    }

    /**
     * Returns the close-value (as a double primitive) for an item within a 
     * series.
     * 
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     * 
     * @return The close-value.
     */
    public double getCloseValue(int series, int item) {
        double result = Double.NaN;
        Number close = getClose(series, item);
        if (close != null) {
            result = close.doubleValue();   
        }
        return result;   
    }

    /**
     * Returns the volume-value for one item in a series.
     *
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     *
     * @return The volume-value.
     */
    public Number getVolume(int series, int item) {
        return this.volume[item];
    }

    /**
     * Returns the volume-value (as a double primitive) for an item within a 
     * series.
     * 
     * @param series  the series (zero-based index).
     * @param item  the item (zero-based index).
     * 
     * @return The volume-value.
     */
    public double getVolumeValue(int series, int item) {
        double result = Double.NaN;
        Number volume = getVolume(series, item);
        if (volume != null) {
            result = volume.doubleValue();   
        }
        return result;   
    }

    /**
     * Returns the number of series in the dataset.
     * <p>
     * This implementation only allows one series.
     *
     * @return The number of series.
     */
    public int getSeriesCount() {
        return 1;
    }

    /**
     * Returns the number of items in the specified series.
     *
     * @param series  the index (zero-based) of the series.
     *
     * @return The number of items in the specified series.
     */
    public int getItemCount(int series) {
        return this.date.length;
    }

    /**
     * Constructs an array of Number objects from an array of doubles.
     *
     * @param data  the double values to convert.
     *
     * @return The data as an array of Number objects.
     */
    public static Number[] createNumberArray(double[] data) {
        Number[] result = new Number[data.length];
        for (int i = 0; i < data.length; i++) {
            result[i] = new Double(data[i]);
        }
        return result;
    }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人r级一区二区三区| 国产精品水嫩水嫩| 一区二区免费在线| 91在线精品一区二区| 中文字幕精品一区二区精品绿巨人 | 亚洲综合一区二区三区| 欧美在线free| 亚洲成人免费观看| 欧美一区二区三区视频免费| 免费av网站大全久久| 精品久久人人做人人爰| 欧美性猛片aaaaaaa做受| 日本亚洲视频在线| 久久久国产午夜精品| 白白色 亚洲乱淫| 亚洲成av人在线观看| 亚洲丝袜精品丝袜在线| 91精品国产91热久久久做人人| av电影在线观看一区| 国产精品一区二区无线| 亚洲视频香蕉人妖| 国产片一区二区| 欧美人与禽zozo性伦| 国产一区二区视频在线| 亚洲精品自拍动漫在线| 欧美成人a∨高清免费观看| 欧美色精品天天在线观看视频| 黑人精品欧美一区二区蜜桃| 国产精品福利影院| 欧美精品18+| 成人激情免费视频| 日本不卡高清视频| 天天色 色综合| 国产精品你懂的| 欧美国产激情一区二区三区蜜月| www国产成人免费观看视频 深夜成人网| av成人免费在线观看| 国产成人亚洲综合色影视| 五月婷婷综合网| 亚洲妇女屁股眼交7| 亚洲国产高清在线| 国产精品乱码妇女bbbb| 中文幕一区二区三区久久蜜桃| 欧美激情一二三区| 国产精品国产三级国产专播品爱网 | 亚洲一区二区欧美| 亚洲自拍欧美精品| 亚洲国产婷婷综合在线精品| 亚洲一区在线视频观看| 亚洲一区精品在线| 视频一区欧美日韩| 亚洲免费av在线| 国产精品网站在线播放| 欧美激情在线一区二区三区| 欧美国产1区2区| 亚洲综合成人在线| 日产国产高清一区二区三区| 欧美在线一二三| 欧美视频一区在线观看| 欧美另类久久久品| 日韩一区二区免费视频| 欧美自拍偷拍一区| 3d成人h动漫网站入口| 色综合久久久久综合体桃花网| 国产精品123区| 91在线视频18| 67194成人在线观看| 久久婷婷成人综合色| 综合激情成人伊人| 日韩一区欧美二区| 国产精品白丝jk白祙喷水网站| 97久久人人超碰| 欧美日韩1234| 国产欧美日韩一区二区三区在线观看| 欧美激情资源网| 一区二区三区欧美日韩| 久久精品国产77777蜜臀| 日韩影院在线观看| 福利电影一区二区| 成人免费看视频| 成人免费av资源| 欧美日韩性生活| 国产欧美日本一区二区三区| 亚洲一区二区三区四区在线免费观看| 奇米精品一区二区三区四区 | 欧美精品一区二区三区蜜臀| 欧美一区二区三区啪啪| 国产调教视频一区| 欧美国产丝袜视频| 视频一区中文字幕国产| 国产成人在线色| 欧美日韩极品在线观看一区| 中文一区二区在线观看| 午夜精品一区二区三区电影天堂| 懂色av一区二区在线播放| 欧美日韩国产高清一区二区三区| 国产日韩欧美不卡在线| 亚洲成av人影院在线观看网| 成人性生交大合| 欧美一区二区三区在线观看| 亚洲日本在线观看| 国产一区二区三区香蕉| 91麻豆精品国产91久久久更新时间| 国产精品欧美一级免费| 精品一区免费av| 国产高清不卡二三区| 欧美精品 日韩| 一区二区三区色| a亚洲天堂av| 欧美mv日韩mv亚洲| 视频在线观看国产精品| 欧美午夜在线一二页| 国产精品电影一区二区| 国产精品一线二线三线| 色综合久久久久网| 久久久久九九视频| 男女激情视频一区| 色婷婷国产精品久久包臀| 国产蜜臀av在线一区二区三区| 日韩激情中文字幕| 在线观看免费成人| 日韩美女精品在线| 国产成人在线视频网址| 久久亚洲一区二区三区明星换脸| 免费看欧美女人艹b| 欧美日韩精品三区| 亚洲自拍偷拍av| 成人禁用看黄a在线| 国产精品私人自拍| 成人国产精品视频| 国产欧美一区在线| 国产精品亚洲第一 | 亚洲欧洲综合另类在线| 成人精品一区二区三区四区| 欧美国产激情二区三区 | 国产一区二区在线观看视频| 欧美日韩精品一区二区三区蜜桃 | 国产精品欧美精品| 国产一区在线观看视频| 精品国产电影一区二区| 舔着乳尖日韩一区| 91精品国产福利| 蜜桃视频一区二区三区| 国产伦理精品不卡| 国产无遮挡一区二区三区毛片日本| 美腿丝袜一区二区三区| 69av一区二区三区| 久久国产生活片100| 欧美va日韩va| 国产成人免费在线| 国产精品久久久久久久久久免费看 | 日韩免费高清av| 亚洲一区日韩精品中文字幕| 欧美午夜宅男影院| 水野朝阳av一区二区三区| 日韩精品中文字幕一区二区三区| 久久99精品国产麻豆不卡| 久久久久久久久久久99999| 国产精品一区在线观看你懂的| 久久精品网站免费观看| 成人深夜视频在线观看| 亚洲精品视频一区二区| 欧美日韩国产高清一区二区三区| 麻豆91免费观看| 久久久噜噜噜久噜久久综合| 国产在线精品视频| 亚洲欧美日韩久久精品| 欧美日韩高清一区二区三区| 日本网站在线观看一区二区三区 | 91久久精品一区二区| 精品对白一区国产伦| 国产99精品国产| 一区二区三区四区中文字幕| 欧美一级国产精品| 国产福利精品一区| 亚洲无线码一区二区三区| 久久久久久久久久久久电影| 91福利在线观看| 国产麻豆精品久久一二三| 自拍视频在线观看一区二区| 欧美日本在线观看| 国产成人在线视频免费播放| 亚洲综合色区另类av| 日韩一级完整毛片| 99在线热播精品免费| 日韩国产欧美三级| 欧美国产亚洲另类动漫| 91精品国产一区二区| 国产精品一区二区91| 亚洲一级二级三级在线免费观看| 日韩一区二区三| 91浏览器在线视频| 亚洲色图在线视频| 日韩精品中文字幕在线不卡尤物| 99re热这里只有精品视频| 久久精品免费观看| 一二三区精品福利视频| 久久亚洲欧美国产精品乐播 | 国产精品福利一区| 91精品国产欧美日韩|