`
soleegn
  • 浏览: 147384 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
阅读更多
  1package com.glnpu.dmp.test;
  2
  3import java.awt.Color;
  4import java.awt.Font;
  5import java.awt.Frame;
  6import java.util.Calendar;
  7import java.util.Date;
  8
  9import org.eclipse.jface.window.ApplicationWindow;
 10import org.eclipse.swt.SWT;
 11import org.eclipse.swt.awt.SWT_AWT;
 12import org.eclipse.swt.graphics.Point;
 13import org.eclipse.swt.widgets.Composite;
 14import org.eclipse.swt.widgets.Control;
 15import org.eclipse.swt.widgets.Display;
 16import org.eclipse.swt.widgets.Shell;
 17import org.eclipse.swt.widgets.TabFolder;
 18import org.eclipse.swt.widgets.TabItem;
 19import org.jfree.chart.ChartFactory;
 20import org.jfree.chart.ChartPanel;
 21import org.jfree.chart.JFreeChart;
 22import org.jfree.chart.plot.PiePlot;
 23import org.jfree.chart.title.TextTitle;
 24import org.jfree.data.category.IntervalCategoryDataset;
 25import org.jfree.data.gantt.Task;
 26import org.jfree.data.gantt.TaskSeries;
 27import org.jfree.data.gantt.TaskSeriesCollection;
 28import org.jfree.data.general.DefaultPieDataset;
 29
 30public class Test extends ApplicationWindow {
 31
 32    /** *//**
 33     * Create the application window
 34     */

 35    public Test() {
 36        super(null);
 37        addToolBar(SWT.FLAT | SWT.WRAP);
 38        addMenuBar();
 39        addStatusLine();
 40    }

 41
 42    /** *//**
 43     * Create contents of the application window
 44     * 
 45     * @param parent
 46     */

 47    @Override
 48    protected Control createContents(Composite parent) {
 49        TabFolder tf = new TabFolder(parent, SWT.TOP);
 50        TabItem ti = new TabItem(tf, SWT.NULL);
 51        ti.setText("分类");
 52        Composite composite = new Composite(tf, SWT.NO_BACKGROUND
 53                | SWT.EMBEDDED);
 54        Frame frame = SWT_AWT.new_Frame(composite);
 55        frame.add(new ChartPanel(createBarChart()));
 56        ti.setControl(composite);
 57        TabItem ti1 = new TabItem(tf, SWT.NULL);
 58        ti1.setText("项目组");
 59        Composite composite1 = new Composite(tf, SWT.NO_BACKGROUND
 60                | SWT.EMBEDDED);
 61        Frame frame1 = SWT_AWT.new_Frame(composite1);
 62        frame1.add(new ChartPanel(createGanttChart()));
 63        ti1.setControl(composite1);
 64        tf.setSelection(0);
 65        return tf;
 66    }

 67
 68    /** *//**
 69     * 方法名称: 内容摘要:
 70     * 
 71     * @return
 72     * @return JFreeChart
 73     * @throws
 74     */

 75    private JFreeChart createGanttChart() {
 76        String title = "Gantt测试";
 77        IntervalCategoryDataset dataset = createSampleDataset();
 78
 79        JFreeChart jfc = ChartFactory.createGanttChart(title, "项目各阶段详细实施计划",
 80                "项目周期", dataset, falsefalsefalse);
 81
 82        return jfc;
 83    }

 84
 85    /** *//**
 86      * 方法名称:
 87      * 内容摘要:创建gantt内容
 88      *
 89      * @return
 90      * @return IntervalCategoryDataset
 91      * @throws
 92     */

 93    private IntervalCategoryDataset createSampleDataset() {
 94        TaskSeries s1 = new TaskSeries("日程表");
 95
 96        Task t1 = new Task("项目立项", date(1, Calendar.APRIL, 2001), date(5,
 97                Calendar.APRIL, 2001));
 98        t1.setPercentComplete(1.00);
 99        
100        Task t2 = new Task("项目立项讨论", date(6, Calendar.APRIL, 2001), date(19,
101                Calendar.APRIL, 2001));
102        
103        s1.add(t1);
104        s1.add(t2);
105        
106        
107        final Task t3 = new Task(
108                "需求分析"
109                date(10, Calendar.APRIL, 2001), date(5, Calendar.MAY, 2001)
110            );
111            final Task st31 = new Task(
112                "需求1"
113                date(10, Calendar.APRIL, 2001), date(25, Calendar.APRIL, 2001)
114            );
115            st31.setPercentComplete(1.0);
116            final Task st32 = new Task(
117                "需求2"
118                date(1, Calendar.MAY, 2001), date(5, Calendar.MAY, 2001)
119            );
120            st32.setPercentComplete(1.0);
121            t3.addSubtask(st31);
122            t3.addSubtask(st32);
123            s1.add(t3);
124        
125        
126        
127        final TaskSeriesCollection collection = new TaskSeriesCollection();
128        collection.add(s1);
129
130        return collection;
131    }

132
133    /** *//** */
134    /** *//**
135     * Utility method for creating <code>Date</code> objects.
136     * 
137     * @param day
138     *            日
139     * @param month
140     *            月
141     * @param year
142     *            年
143     * 
144     * @return a date.
145     */

146    private static Date date(final int day, final int month, final int year) {
147
148        final Calendar calendar = Calendar.getInstance();
149        calendar.set(year, month, day);
150
151        final Date result = calendar.getTime();
152        return result;
153
154    }

155
156    /** *//**
157     * 方法名称: 内容摘要:饼图测试
158     * 
159     * @return
160     * @return JFreeChart
161     * @throws
162     */

163    private JFreeChart createBarChart() {
164        String title = "空调2002年市场占有率";
165        DefaultPieDataset piedata = new DefaultPieDataset();
166        piedata.setValue("联想"27.3);
167    
分享到:
评论

相关推荐

    Java使用SWT JFreeChart控件实现的小游戏.zip

    Java使用SWT JFreeChart控件实现的小游戏.zipJava使用SWT JFreeChart控件实现的小游戏.zipJava使用SWT JFreeChart控件实现的小游戏.zipJava使用SWT JFreeChart控件实现的小游戏.zipJava使用SWT JFreeChart控件实现的...

    在SWT中显示jfreeChart图形,且解决滚动条问题

    Jfreechart提供的SWT接口,并不支持滚动条,本资源实现了这个方法

    jfreechart源代码在swt和jsp页面

    在这个场景中,我们将深入探讨如何在 SWT(Standard Widget Toolkit)和 JSP(JavaServer Pages)环境中使用 JFreeChart 的源代码来生成这些图表。 首先,让我们了解 JFreeChart 的核心功能。JFreeChart 提供了多种...

    jFreechart例子及jar

    标题中的 "jFreechart例子及jar" 指的是包含 `jFreeChart` 示例代码和可能的库文件,这对于开发者来说是一个宝贵的学习资源。在这个压缩包中,你可能会找到一个名为 `jfreechart-1.0.13-demo.src` 的文件,这通常...

    jFreeChart简单例子

    在jFreeChart中,仪表盘可以用来展示一组相关的图表,通常用于监控系统状态或者关键性能指标。创建仪表盘需要定义各个图表的位置和大小,并将它们组合在一个面板上。通过自定义颜色、标签和数据源,可以创建出具有...

    jfreechart经典例子

    标题“jfreechart经典例子”暗示了我们将深入探讨如何使用JFreeChart库创建各种图表,并通过具体的示例来理解其工作原理。 首先,JFreeChart库是开源的,这意味着它允许开发者自由地使用、修改和分发。它的API设计...

    一个JFreeChart例子

    这个例子是关于如何使用JFreeChart来生成图表的一个实例,通过它我们可以深入理解JFreeChart的基本用法和功能。 **一、JFreeChart介绍** JFreeChart库提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图、...

    word+excel+jfreechart例子

    这个名为"word+excel+jfreechart例子"的压缩包提供了三个示例,分别展示了如何使用Java来实现这些功能。下面我们将详细探讨每个方面的知识点。 首先,我们来看Java操作Word的部分。在Java中,可以使用Apache POI库...

    jfreechart-swt-1.0.9.jar

    jfreechart-swt-1.0.9.jar,jfreechart和SWT相结合的jar包

    JFreeChart 官方例子 JFReeChart Dome

    7. **输出格式**:JFreeChart不仅可以将图表显示在屏幕上,还可以导出为多种格式,如JPEG、PNG、PDF和SVG,方便在报告或网页中使用。 通过深入研究JFreeChart的官方示例,开发者能够熟练掌握如何创建、配置和控制...

    jfreechart例子

    通过学习和实践"jfreechart例子"中的示例,你可以更好地掌握JFreeChart的使用,提升数据可视化的专业技能。无论是简单的数据展示还是复杂的交互式图表,JFreeChart都能满足你的需求,让你的项目更加生动直观。

    jfreeChart例子

    创建的图表可以导出为各种格式,如 PNG、JPEG、SVG 或 PDF,以便在报告、网页或打印中使用。这可以通过 `ChartUtilities.saveChartAsXXX()` 方法实现。 9. **自定义图表** JFreeChart 提供了丰富的 API 用于...

    JFreeChart例子

    本例子将深入探讨如何在Servlet环境中使用JFreeChart,并将其结果显示在JSP页面上,这对于Web应用中的数据可视化尤其有用。 首先,我们需要理解JFreeChart的工作原理。JFreeChart通过构建图表模型(如...

    jfreeChart 例子,并设置语言,防止乱码

    在本文中,我们将深入探讨如何使用JFreeChart来创建饼状图,并重点讲解如何设置语言以及解决可能出现的乱码问题。 首先,JFreeChart依赖于JCommon库,这是一个提供基础图形和数据处理功能的库。在我们的示例中,...

    JFreeChart例子工程,web页面展示图片

    **JFreeChart简介** JFreeChart是一款开源的Java图表库,它提供了丰富的图表类型..."JFreeChartWebDemo"项目则提供了一个实际的案例,演示了如何在Web环境中有效利用这个库,帮助我们理解并掌握JFreeChart的使用技巧。

    jfreechart例子和教程大全

    在项目中使用JFreeChart,首先需要从官方网站或Maven仓库下载对应的jar包,然后将其添加到项目的类路径中。对于Maven项目,可以在pom.xml文件中添加依赖: ```xml &lt;groupId&gt;org.jfree &lt;artifactId&gt;jfreechart ...

    在 JavaFx 中使用 JFreeChart 生成图表

    在JavaFX中使用JFreeChart,我们可以通过SwingNode组件将Swing组件(JFreeChart就是基于Swing的)嵌入到JavaFX应用程序中。 步骤一:引入JFreeChart库 要在JavaFX项目中使用JFreeChart,首先需要将其依赖添加到项目...

    JFreeChart 例子 源码 demo

    它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计。JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt...

Global site tag (gtag.js) - Google Analytics