<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)?。?!
    主站蜘蛛池模板: JLZZJLZZ亚洲乱熟无码| 永久久久免费浮力影院| 久久亚洲国产午夜精品理论片| 精品一区二区三区无码免费直播| 日韩在线免费播放| 亚洲国产精品成人AV在线| 性做久久久久免费看| 免费人成再在线观看网站 | 99re免费99re在线视频手机版| 国产精品亚洲аv无码播放| 国产日韩AV免费无码一区二区 | 亚洲国产精华液2020| 精品国产免费观看| 黄页网址在线免费观看| 亚洲无码日韩精品第一页| 成人影片一区免费观看| 亚洲Av综合色区无码专区桃色 | 亚洲精品宾馆在线精品酒店| 国产三级免费电影| 青青操免费在线视频| 亚洲欧洲日产韩国在线| 成人免费看黄20分钟| 特级aaaaaaaaa毛片免费视频| 伊伊人成亚洲综合人网7777| 69av免费观看| 亚洲国产AV一区二区三区四区 | 亚洲综合精品香蕉久久网97| 国产成人A在线观看视频免费| 日韩色日韩视频亚洲网站| 久久久青草青青亚洲国产免观| 国产精品1024永久免费视频| 亚洲av永久无码精品网址| 国产亚洲精品成人a v小说| 久久www免费人成看片| 国产亚洲欧美在线观看| 亚洲av永久无码精品表情包| 成人五级毛片免费播放| xxxx日本在线播放免费不卡| 亚洲大香人伊一本线| 亚洲片一区二区三区| 成年黄网站色大免费全看|