<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    大夢(mèng)想家

    5年開發(fā)工程師,2年實(shí)施經(jīng)理,X年售前顧問,......
    數(shù)據(jù)加載中……
    SWT中使用JFreeChart(無需SWT_AWT)
        好像從1.03開始Jfc就已經(jīng)提供了在SWT中使用JFC的專用包和類,只是沒有人寫這些東西而已~今天我就貼一些Demo,以后再也不用SWT_AWT了~
      1/* ===========================================================
      2 * JFreeChart : a free chart library for the Java(tm) platform
      3 * ===========================================================
      4 *
      5 * (C) Copyright 2000-2007, by Object Refinery Limited and Contributors.
      6 *
      7 * Project Info:  http://www.jfree.org/jfreechart/index.html
      8 *
      9 * This library is free software; you can redistribute it and/or modify it 
     10 * under the terms of the GNU Lesser General Public License as published by 
     11 * the Free Software Foundation; either version 2.1 of the License, or 
     12 * (at your option) any later version.
     13 *
     14 * This library is distributed in the hope that it will be useful, but 
     15 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
     16 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 
     17 * License for more details.
     18 *
     19 * You should have received a copy of the GNU Lesser General Public
     20 * License along with this library; if not, write to the Free Software
     21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
     22 * USA.  
     23 *
     24 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 
     25 * in the United States and other countries.]
     26 *
     27 * ---------------------
     28 * SWTBarChartDemo1.java
     29 * ---------------------
     30 * (C) Copyright 2006, 2007, by Object Refinery Limited and Contributors.
     31 *
     32 * Original Author:  David Gilbert (for Object Refinery Limited);
     33 * Contributor(s):
     34 *
     35 * Changes
     36 * -------
     37 * 23-Aug-2006 : New class (DG);
     38 * 
     39 */

     40
     41package org.jfree.experimental.chart.swt.demo;
     42
     43import java.awt.Color;
     44
     45import org.eclipse.swt.SWT;
     46import org.eclipse.swt.layout.FillLayout;
     47import org.eclipse.swt.widgets.Display;
     48import org.eclipse.swt.widgets.Shell;
     49import org.jfree.chart.ChartFactory;
     50import org.jfree.chart.JFreeChart;
     51import org.jfree.chart.axis.CategoryAxis;
     52import org.jfree.chart.axis.CategoryLabelPositions;
     53import org.jfree.chart.axis.NumberAxis;
     54import org.jfree.chart.plot.CategoryPlot;
     55import org.jfree.chart.plot.PlotOrientation;
     56import org.jfree.chart.renderer.category.BarRenderer;
     57import org.jfree.data.category.CategoryDataset;
     58import org.jfree.data.category.DefaultCategoryDataset;
     59import org.jfree.experimental.chart.swt.ChartComposite;
     60
     61/**
     62 * An SWT demo.
     63 */

     64public class SWTBarChartDemo1 {
     65    
     66    /**
     67     * Returns a sample dataset.
     68     * 
     69     * @return The dataset.
     70     */

     71    private static CategoryDataset createDataset() {
     72        
     73        // row keys
     74        String series1 = "First";
     75        String series2 = "Second";
     76        String series3 = "Third";
     77
     78        // column keys
     79        String category1 = "Category 1";
     80        String category2 = "Category 2";
     81        String category3 = "Category 3";
     82        String category4 = "Category 4";
     83        String category5 = "Category 5";
     84
     85        // create the dataset
     86        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
     87
     88        dataset.addValue(1.0, series1, category1);
     89        dataset.addValue(4.0, series1, category2);
     90        dataset.addValue(3.0, series1, category3);
     91        dataset.addValue(5.0, series1, category4);
     92        dataset.addValue(5.0, series1, category5);
     93
     94        dataset.addValue(5.0, series2, category1);
     95        dataset.addValue(7.0, series2, category2);
     96        dataset.addValue(6.0, series2, category3);
     97        dataset.addValue(8.0, series2, category4);
     98        dataset.addValue(4.0, series2, category5);
     99
    100        dataset.addValue(4.0, series3, category1);
    101        dataset.addValue(3.0, series3, category2);
    102        dataset.addValue(2.0, series3, category3);
    103        dataset.addValue(3.0, series3, category4);
    104        dataset.addValue(6.0, series3, category5);
    105        
    106        return dataset;
    107        
    108    }

    109    
    110    /**
    111     * Creates a sample chart.
    112     * 
    113     * @param dataset  the dataset.
    114     * 
    115     * @return The chart.
    116     */

    117    private static JFreeChart createChart(CategoryDataset dataset) {
    118        
    119        // create the chart
    120        JFreeChart chart = ChartFactory.createBarChart(
    121            "Bar Chart Demo",         // chart title
    122            "Category",               // domain axis label
    123            "Value",                  // range axis label
    124            dataset,                  // data
    125            PlotOrientation.VERTICAL, // orientation
    126            true,                     // include legend
    127            true,                     // tooltips?
    128            false                     // URLs?
    129        );
    130
    131        // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART
    132
    133        // set the background color for the chart
    134        chart.setBackgroundPaint(Color.white);
    135
    136        // get a reference to the plot for further customisation
    137        CategoryPlot plot = (CategoryPlot) chart.getPlot();
    138        plot.setBackgroundPaint(Color.lightGray);
    139        plot.setDomainGridlinePaint(Color.white);
    140        plot.setDomainGridlinesVisible(true);
    141        plot.setRangeGridlinePaint(Color.white);
    142
    143        // set the range axis to display integers only
    144        final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    145        rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    146
    147        // disable bar outlines
    148        BarRenderer renderer = (BarRenderer) plot.getRenderer();
    149        renderer.setDrawBarOutline(false);
    150
    151        CategoryAxis domainAxis = plot.getDomainAxis();
    152        domainAxis.setCategoryLabelPositions(
    153            CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 6.0)
    154        );
    155        // OPTIONAL CUSTOMISATION COMPLETED.
    156        
    157        return chart;
    158        
    159    }

    160    
    161    /**
    162     * Starting point for the demonstration application.
    163     *
    164     * @param args  ignored.
    165     */

    166    public static void main( String[] args ) 
    167    {
    168        JFreeChart chart = createChart(createDataset());
    169        Display display = new Display();
    170        Shell shell = new Shell(display);
    171        shell.setSize(600300);
    172        shell.setLayout(new FillLayout());
    173        shell.setText("Test for jfreechart running with SWT");
    174        final ChartComposite frame = new ChartComposite(shell, SWT.NONE, chart,
    175                true);
    176        frame.pack();
    177        shell.open();
    178        while (!shell.isDisposed()) {
    179            if (!display.readAndDispatch())
    180                display.sleep();
    181        }

    182    }

    183
    184}

    185
    186
    187
    這個(gè)是JFC里面自帶的一個(gè)例子,例子里面使用了一個(gè)ChartComposite來放置chart對(duì)象~這樣對(duì)使用者來說更加方便了,其實(shí)JFC的SWT包下還有好幾個(gè)很好用的類,只是沒有文檔而已~
    更重要的是SWT_AWT主要是將AWT嵌入SWT中,而ChartComposite則是將chart對(duì)象直接轉(zhuǎn)換為SWT中的東東,連右鍵都是SWT的了~

    客戶虐我千百遍,我待客戶如初戀!

    posted on 2007-08-21 09:22 阿南 閱讀(3997) 評(píng)論(2)  編輯  收藏 所屬分類: 西安java用戶群Eclipse-SWT

    評(píng)論

    # re: SWT中使用JFreeChart(無需SWT_AWT)[未登錄] 2007-08-21 17:37 寒武紀(jì)

    這樣應(yīng)該比SWT_AWT橋接方式要穩(wěn)定。

    # re: SWT中使用JFreeChart(無需SWT_AWT) 2012-01-31 15:27 cala

    @寒武紀(jì)
    我的JFreeChart怎么沒有ChartComposite?。?求指點(diǎn)?。?!
    主站蜘蛛池模板: 亚洲精品国产精品乱码不卡| 无码国产精品一区二区免费I6| 国产一级淫片视频免费看| 91亚洲精品自在在线观看| 无码精品国产一区二区三区免费| 亚洲精品网站在线观看不卡无广告 | 亚洲AV无码专区日韩| 国产区图片区小说区亚洲区| 国产精品冒白浆免费视频| 亚洲AV女人18毛片水真多| 国产在线ts人妖免费视频| 羞羞漫画登录页面免费| 全亚洲最新黄色特级网站 | 亚洲国产综合精品| 毛片免费在线视频| 亚洲精品女同中文字幕| 亚洲а∨天堂久久精品| 91视频免费观看| 亚洲资源在线视频| 成年人网站在线免费观看| 亚洲国产精品网站在线播放 | 国产亚洲精品美女| 亚洲成av人在片观看| 一级毛片aa高清免费观看| 亚洲欧洲美洲无码精品VA| 在线看无码的免费网站| 亚洲首页在线观看| 国产精品四虎在线观看免费| 中文字幕a∨在线乱码免费看| 亚洲影院在线观看| 成人人免费夜夜视频观看| 免费的黄色的网站| 亚洲精品白浆高清久久久久久| 亚欧人成精品免费观看| 在线亚洲精品视频| 亚洲日本中文字幕| 西西大胆无码视频免费| 丰满少妇作爱视频免费观看| 亚洲精品综合久久中文字幕| 国产一级理论免费版| 91福利免费体验区观看区|