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

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

?? yintervalrenderer.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.]
 *
 * ----------------------
 * YIntervalRenderer.java
 * ----------------------
 * (C) Copyright 2002-2005, by Object Refinery Limited.
 *
 * Original Author:  David Gilbert (for Object Refinery Limited);
 * Contributor(s):   -;
 *
 * $Id: YIntervalRenderer.java,v 1.7.2.1 2005/10/25 20:56:21 mungady Exp $
 *
 * Changes
 * -------
 * 05-Nov-2002 : Version 1 (DG);
 * 25-Mar-2003 : Implemented Serializable (DG);
 * 01-May-2003 : Modified drawItem() method signature (DG);
 * 20-Aug-2003 : Implemented Cloneable and PublicCloneable (DG);
 * 16-Sep-2003 : Changed ChartRenderingInfo --> PlotRenderingInfo (DG);
 * 25-Feb-2004 : Replaced CrosshairInfo with CrosshairState (DG);
 * 27-Sep-2004 : Access double values from dataset (DG);
 * 11-Nov-2004 : Now uses ShapeUtilities to translate shapes (DG);
 * 
 */

package org.jfree.chart.renderer.xy;

import java.awt.Graphics2D;
import java.awt.Paint;
import java.awt.Shape;
import java.awt.Stroke;
import java.awt.geom.Line2D;
import java.awt.geom.Rectangle2D;
import java.io.Serializable;

import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.entity.EntityCollection;
import org.jfree.chart.entity.XYItemEntity;
import org.jfree.chart.labels.XYToolTipGenerator;
import org.jfree.chart.plot.CrosshairState;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.PlotRenderingInfo;
import org.jfree.chart.plot.XYPlot;
import org.jfree.data.xy.IntervalXYDataset;
import org.jfree.data.xy.XYDataset;
import org.jfree.ui.RectangleEdge;
import org.jfree.util.PublicCloneable;
import org.jfree.util.ShapeUtilities;

/**
 * A renderer that draws a line connecting the start and end Y values for an 
 * {@link XYPlot}.
 */
public class YIntervalRenderer extends AbstractXYItemRenderer 
                               implements XYItemRenderer, 
                                          Cloneable,
                                          PublicCloneable,
                                          Serializable {

    private static final long serialVersionUID = -2951586537224143260L;
    
    /**
     * The default constructor.
     */
    public YIntervalRenderer() {
        super();
    }

    /**
     * Draws the visual representation of a single data item.
     *
     * @param g2  the graphics device.
     * @param state  the renderer state.
     * @param dataArea  the area within which the plot is being drawn.
     * @param info  collects information about the drawing.
     * @param plot  the plot (can be used to obtain standard color 
     *              information etc).
     * @param domainAxis  the domain axis.
     * @param rangeAxis  the range axis.
     * @param dataset  the dataset.
     * @param series  the series index (zero-based).
     * @param item  the item index (zero-based).
     * @param crosshairState  crosshair information for the plot 
     *                        (<code>null</code> permitted).
     * @param pass  the pass index (ignored here).
     */
    public void drawItem(Graphics2D g2, 
                         XYItemRendererState state,
                         Rectangle2D dataArea,
                         PlotRenderingInfo info,
                         XYPlot plot, 
                         ValueAxis domainAxis, 
                         ValueAxis rangeAxis,
                         XYDataset dataset, 
                         int series, 
                         int item,
                         CrosshairState crosshairState, 
                         int pass) {

        // setup for collecting optional entity info...
        Shape entityArea = null;
        EntityCollection entities = null;
        if (info != null) {
            entities = info.getOwner().getEntityCollection();
        }

        IntervalXYDataset intervalDataset = (IntervalXYDataset) dataset;

        double x = intervalDataset.getXValue(series, item);
        double yLow   = intervalDataset.getStartYValue(series, item);
        double yHigh  = intervalDataset.getEndYValue(series, item);

        RectangleEdge xAxisLocation = plot.getDomainAxisEdge();
        RectangleEdge yAxisLocation = plot.getRangeAxisEdge();
        
        double xx = domainAxis.valueToJava2D(x, dataArea, xAxisLocation);
        double yyLow = rangeAxis.valueToJava2D(yLow, dataArea, yAxisLocation);
        double yyHigh = rangeAxis.valueToJava2D(yHigh, dataArea, yAxisLocation);

        Paint p = getItemPaint(series, item);
        Stroke s = getItemStroke(series, item);
        
        Line2D line = null;
        Shape shape = getItemShape(series, item);
        Shape top = null;
        Shape bottom = null;
        PlotOrientation orientation = plot.getOrientation();
        if (orientation == PlotOrientation.HORIZONTAL) {
            line = new Line2D.Double(yyLow, xx, yyHigh, xx);
            top = ShapeUtilities.createTranslatedShape(shape, yyHigh, xx);
            bottom = ShapeUtilities.createTranslatedShape(shape, yyLow, xx);
        }
        else if (orientation == PlotOrientation.VERTICAL) {
            line = new Line2D.Double(xx, yyLow, xx, yyHigh);
            top = ShapeUtilities.createTranslatedShape(shape, xx, yyHigh);
            bottom = ShapeUtilities.createTranslatedShape(shape, xx, yyLow);
        }
        g2.setPaint(p);
        g2.setStroke(s);
        g2.draw(line);

        g2.fill(top);
        g2.fill(bottom);

        // add an entity for the item...
        if (entities != null) {
            if (entityArea == null) {
                entityArea = line.getBounds();
            }
            String tip = null;
            XYToolTipGenerator generator = getToolTipGenerator(series, item);
            if (generator != null) {
                tip = generator.generateToolTip(dataset, series, item);
            }
            String url = null;
            if (getURLGenerator() != null) {
                url = getURLGenerator().generateURL(dataset, series, item);
            }
            XYItemEntity entity = new XYItemEntity(
                entityArea, dataset, series, item, tip, url
            );
            entities.add(entity);
        }

    }
    
    /**
     * Returns a clone of the renderer.
     * 
     * @return A clone.
     * 
     * @throws CloneNotSupportedException  if the renderer cannot be cloned.
     */
    public Object clone() throws CloneNotSupportedException {
        return super.clone();
    }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产网站一区二区三区| 国产夫妻精品视频| 国产a精品视频| 欧美日韩亚州综合| 国产视频在线观看一区二区三区| 成人夜色视频网站在线观看| 日韩精品一区二区在线观看| 色婷婷综合中文久久一本| 日韩欧美一区在线观看| 亚洲欧美另类久久久精品2019| 美女网站色91| 欧美日本不卡视频| 一区二区三区在线免费播放| 国产福利精品一区| 欧美精品一区二区不卡 | 欧美成人一区二区三区| 亚洲人成在线观看一区二区| 粉嫩av一区二区三区在线播放| 日韩欧美一区二区视频| 日本欧美一区二区三区| 欧美人牲a欧美精品| 亚洲一区在线观看免费观看电影高清| 国产v日产∨综合v精品视频| 日韩精品一区二区三区中文精品| 青青草视频一区| 日韩一区二区精品葵司在线 | 欧美人体做爰大胆视频| 一区二区三区视频在线看| 色视频一区二区| 亚洲最新在线观看| 欧美系列亚洲系列| 亚洲国产精品影院| 欧美日韩午夜在线| 日韩成人一级大片| 日韩欧美综合一区| 久久国产日韩欧美精品| 精品日韩欧美在线| 成人在线综合网站| 国产精品久久久久久亚洲伦| 99久久99久久精品免费看蜜桃| 亚洲女人小视频在线观看| 一本到不卡精品视频在线观看| 夜夜嗨av一区二区三区中文字幕 | 亚洲福利视频导航| 欧美日韩高清一区二区三区| 亚洲高清视频的网址| 91麻豆精品91久久久久久清纯 | 亚洲精品一区二区三区在线观看| 免费亚洲电影在线| 久久久久9999亚洲精品| av影院午夜一区| 亚洲国产人成综合网站| 精品欧美一区二区久久| 成人网在线免费视频| 成人欧美一区二区三区| 91激情在线视频| 免费成人性网站| 国产欧美一区二区三区鸳鸯浴| 91麻豆国产自产在线观看| 日韩国产高清影视| 中文字幕不卡在线观看| 欧美日韩一区二区三区不卡| 久久精品久久久精品美女| 国产精品无人区| 欧美精品一级二级| 懂色av中文一区二区三区| 亚洲综合av网| 久久久久高清精品| 欧美性大战久久久久久久蜜臀| 久久91精品国产91久久小草| 国产精品国产三级国产aⅴ中文| 欧美日韩一级二级三级| 国产一区二区三区国产| 亚洲一区二区四区蜜桃| 国产日韩欧美在线一区| 777xxx欧美| 99综合电影在线视频| 理论电影国产精品| 国产成人丝袜美腿| 婷婷久久综合九色综合绿巨人 | 欧美电影精品一区二区| 97se亚洲国产综合自在线不卡| 久久精品国产亚洲a| 亚洲精品久久久蜜桃| 久久久av毛片精品| 在线不卡中文字幕播放| 色综合夜色一区| 国产一区不卡在线| 蜜桃久久久久久| 亚洲午夜影视影院在线观看| 国产精品天美传媒沈樵| 精品少妇一区二区三区 | 欧美激情在线一区二区| 欧美一区二区三区思思人| 欧美亚洲另类激情小说| 成人小视频在线观看| 国产一区二区三区蝌蚪| 麻豆成人av在线| 三级久久三级久久久| 一区二区三区日本| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 日韩免费高清电影| 日韩区在线观看| 日韩三级高清在线| 欧美一区二区三区小说| 911精品产国品一二三产区| 国产精品电影一区二区| 国产无遮挡一区二区三区毛片日本| 精品国产一区二区三区久久影院 | 亚洲免费成人av| 国产精品乱人伦| 国产偷国产偷亚洲高清人白洁 | 成人综合在线观看| 国产一区二区三区在线观看精品| 久久精品国产亚洲高清剧情介绍| 奇米777欧美一区二区| 奇米影视在线99精品| 日韩高清中文字幕一区| 日韩精品色哟哟| 免费久久精品视频| 精品在线一区二区三区| 精品一区二区三区影院在线午夜 | 日韩成人免费电影| 日韩**一区毛片| 精品一区二区在线视频| 国产成人欧美日韩在线电影| 国产xxx精品视频大全| 色婷婷综合激情| 欧美日韩高清在线播放| 亚洲.国产.中文慕字在线| 亚洲与欧洲av电影| 无码av中文一区二区三区桃花岛| 日日夜夜精品视频免费| 久久99蜜桃精品| 不卡一区中文字幕| 欧美久久高跟鞋激| 日韩精品中午字幕| 国产精品丝袜在线| 亚洲一区二区欧美| 精品亚洲免费视频| 91年精品国产| 制服丝袜激情欧洲亚洲| 久久久国产午夜精品| 亚洲免费资源在线播放| 蜜乳av一区二区三区| caoporen国产精品视频| 8x8x8国产精品| 欧美激情一区二区三区不卡 | 欧洲精品视频在线观看| 日韩免费一区二区三区在线播放| 久久一区二区三区四区| 18成人在线视频| 日韩不卡一二三区| 成人性生交大片免费看视频在线 | 国产精品一区在线观看乱码| 91亚洲午夜精品久久久久久| 7799精品视频| 亚洲另类春色国产| 国产精品一二三四区| 欧美影院一区二区三区| 久久久三级国产网站| 一区二区视频免费在线观看| 国产麻豆日韩欧美久久| 欧美日韩激情一区二区三区| 中文字幕第一页久久| 久久精品国产免费| 欧美视频一二三区| 国产精品久久久久9999吃药| 激情综合色综合久久| 精品视频免费在线| 国产精品大尺度| 国产一区二区毛片| 91精品午夜视频| 亚洲国产精品久久艾草纯爱| 风流少妇一区二区| 欧美r级电影在线观看| 亚洲一区在线播放| 色婷婷国产精品| 亚洲丝袜制服诱惑| 懂色av一区二区三区免费看| 欧美一二三四在线| 蜜桃传媒麻豆第一区在线观看| 欧美日韩一区二区三区在线看| 亚洲欧美在线观看| 粉嫩av一区二区三区粉嫩| 欧美精品一区二区三区蜜桃 | 91色porny蝌蚪| 国产精品网站在线| 高清国产一区二区三区| 国产性色一区二区| 国产乱子伦视频一区二区三区 | 成人高清视频在线观看| 久久综合丝袜日本网| 精品一区二区综合| 久久无码av三级| 国产精品 日产精品 欧美精品| 久久久综合激的五月天| 国产一区二区不卡| 中文乱码免费一区二区| 成人精品一区二区三区四区|