`
zjx2388
  • 浏览: 1331427 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

jFreeChart利用CategoryDatase,ChartFactory.createLineChart生成的折线图

    博客分类:
  • J2EE
阅读更多
package com.potevio.rnd;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.general.DatasetUtilities;

public class CreateJFreeChartLine {   
  
    /**  
     * 创建JFreeChart Line Chart(折线图)  
     */  
    public static void main(String[] args) {   
        //步骤1:创建CategoryDataset对象(准备数据)   
        CategoryDataset dataset = createDataset();   
        //步骤2:根据Dataset 生成JFreeChart对象,以及做相应的设置   
        JFreeChart freeChart = createChart(dataset);   
        //步骤3:将JFreeChart对象输出到文件,Servlet输出流等   
        saveAsFile(freeChart, "F:\\jfreechart\\line.png", 600, 400);   
    }   
  
    // 保存为文件   
    public static void saveAsFile(JFreeChart chart, String outputPath,   
            int weight, int height) {   
        FileOutputStream out = null;   
        try {   
            File outFile = new File(outputPath);   
            if (!outFile.getParentFile().exists()) {   
                outFile.getParentFile().mkdirs();   
            }   
            out = new FileOutputStream(outputPath);   
            // 保存为PNG   
            ChartUtilities.writeChartAsPNG(out, chart, weight, height);   
            // 保存为JPEG   
            // ChartUtilities.writeChartAsJPEG(out, chart, weight, height);   
            out.flush();   
        } catch (FileNotFoundException e) {   
            e.printStackTrace();   
        } catch (IOException e) {   
            e.printStackTrace();   
        } finally {   
            if (out != null) {   
                try {   
                    out.close();   
                } catch (IOException e) {   
                    // do nothing   
                }   
            }   
        }   
    }   
  
    // 根据CategoryDataset创建JFreeChart对象   
    public static JFreeChart createChart(CategoryDataset categoryDataset) {   
        // 创建JFreeChart对象:ChartFactory.createLineChart   
        JFreeChart jfreechart = ChartFactory.createLineChart("Line Chart Demo", // 标题   
                "年分", // categoryAxisLabel (category轴,横轴,X轴标签)   
                "数量", // valueAxisLabel(value轴,纵轴,Y轴的标签)   
                categoryDataset, // dataset   
                PlotOrientation.VERTICAL, true, // legend   
                false, // tooltips   
                false); // URLs   
  
        // 使用CategoryPlot设置各种参数。以下设置可以省略。   
        CategoryPlot plot = (CategoryPlot) jfreechart.getPlot();   
        // 背景色 透明度   
        plot.setBackgroundAlpha(0.5f);   
        // 前景色 透明度   
        plot.setForegroundAlpha(0.5f);   
        // 其他设置 参考 CategoryPlot类   
  
        return jfreechart;   
    }   
  
    /**  
     * 创建CategoryDataset对象  
     *   
     */  
    public static CategoryDataset createDataset() {   
  
        String[] rowKeys = { "One", "Two", "Three" };   
        String[] colKeys = { "1987", "1997", "2007" };   
  
        double[][] data = { { 50, 20, 30 }, { 20, 10D, 40D },   
                { 40, 30.0008D, 38.24D }, };   
  
        // 或者使用类似以下代码   
        // DefaultCategoryDataset categoryDataset = new   
        // DefaultCategoryDataset();   
        // categoryDataset.addValue(10, "rowKey", "colKey");   
  
        return DatasetUtilities.createCategoryDataset(rowKeys, colKeys, data);   
    }   
}

 运行效果图:



 

  • 大小: 12.8 KB
分享到:
评论

相关推荐

    Java JFreeChart 后台生成折线图

    以上就是使用Java JFreeChart库在后台生成折线图的基本流程。饼图和柱状图的生成原理类似,只需替换相应的`ChartFactory`方法(如`createPieChart()`或`createBarChart()`),并调整数据集的结构以适应不同图表的...

    JSP利用JFreeChart生成折线图

    本教程将详细介绍如何在JSP中利用JFreeChart库来生成折线图。 首先,要使用JFreeChart,你需要在项目中引入相关的依赖。"标签"中提到的JFreeChart是这个过程的关键,它提供了丰富的API来创建图表。通常,你需要下载...

    java实现各种数据统计图(柱形图,饼图,折线图)

    在Java编程语言中,生成各种数据统计图,如柱形图、饼图和折线图,通常会使用第三方库,例如jFreeChart。jFreeChart是一个功能强大的图表库,能够帮助开发者创建高质量的2D图表,广泛应用于数据分析、报告生成以及...

    JFreeChart-create-Line.rar_chart line 3D_java绘制折线图_jfreechart_坐标

    如果想生成普通效果的折线图,需要通过工厂类ChartFactory的createLineChart()方法获得JFreeChart类的实例;如果想生成3D效果的折线图,需要通过工厂类ChartFactory的createLineChart3D()方法获得JFreeChart类的实例...

    使用JFreeChart绘画条形图、饼状图以及折线图

    在Java Web开发中,JFreeChart是一个非常强大的库,它允许开发者创建各种类型的图表,包括条形图(Bar Chart)、饼状图(Pie Chart)和折线图(Line Chart)。这些图表可以用于数据可视化,帮助用户更好地理解复杂的...

    JFreechar使用文档

    JFreeChart chart = ChartFactory.createLineChart("折线图标题", "X轴标签", "Y轴标签", dataset); // 创建折线图 ``` ### 图表定制 JFreeChart 提供了许多自定义选项,包括颜色、字体、边框、图例等。例如,你...

    JFreeChart图表生成代码

    - 创建`ChartFactory`对象,如`JFreeChart chart = ChartFactory.createPieChart()`、`JFreeChart chart = ChartFactory.createBarChart()`或`JFreeChart chart = ChartFactory.createLineChart()`。 - 使用`...

    JFreeChart做折线图.zip

    你可以通过`ChartFactory.createLineChart()`方法来创建折线图,这个方法需要四个参数:图表标题、类别轴标题、值轴标题以及数据集。 然后,创建一个`ChartPanel`对象,它是一个Swing组件,可以将`JFreeChart`显示...

    jfreechart所需jar包.zip

    JFreeChart chart = ChartFactory.createLineChart("折线图标题", "X轴标签", "Y轴标签", dataset); ``` 5. 最后,可以将图表渲染到GUI组件,如Swing的`JFrame`,或者保存为图像文件(如PNG, JPEG)。 总之,...

    JFreeChart绘制饼图,折线图,柱状图demo

    JFreeChart是一款强大的Java图表库,它允许开发者在Java应用程序或网页中生成各种高质量的图形,包括饼图、折线图、柱状图等。在本示例中,我们将深入探讨如何利用JFreeChart库来创建这些常见的图表类型。 ### 饼图...

    jfreechart 和jsp 结合折线图的一个例子

    本文将深入探讨如何将JFreeChart与JSP(JavaServer Pages)结合,以实现动态生成折线图的功能。 JFreeChart是一个开源的Java库,它允许开发人员生成高质量的、多样的图表,如折线图、柱状图、饼图等,可以用于报告...

    利用JFreeChart 实现柱状图,饼图,时序图,折线图等

    同样,你需要创建一个`XYDataset`,然后使用`JFreeChart.createLineChart()`方法生成折线图。在折线图中,数据点通过线条连接,可以直观地看出数据的变化趋势。 5. **实际操作步骤** 在JFreeChartTest项目中,通常...

    jfreechart jsp 结合 折线图

    本篇文章将详细介绍如何利用JFreeChart与JSP结合,实现动态生成并显示折线图,以及在MyEclipse工程中的具体操作步骤。 首先,要理解JFreeChart的工作原理。JFreeChart提供了一系列的类和方法,通过这些我们可以创建...

    java制作jfreechart柱状图 饼状图 折线图

    Java中的JFreeChart库是一个强大的工具,用于生成各种类型的图表,包括柱状图、饼状图和折线图。在本教程中,我们将深入探讨如何使用JFreeChart创建这些图表,以及如何用随机生成的数据作为数据源。 首先,...

    web工程jFreeChart展示导出折线图

    在这个“web工程jFreeChart展示导出折线图”的项目中,我们将探讨如何在IDEA Maven环境下利用JFreeChart生成折线图并在前端展示,以及如何实现图表的导出功能。 ### 1. JFreeChart简介 JFreeChart是一个开源的Java...

    JfreeChart的最常用的制图代码实例(饼图,柱图,SeriesChart,折线图)附带工程源码。

    JFreeChart chart = ChartFactory.createLineChart( "折线图示例", // 标题 "X轴标签", // X轴标签 "Y轴标签", // Y轴标签 dataset // 数据集 ); ChartFrame frame = new ChartFrame("我的折线图", chart);...

    用jfree做折线饼型和柱型图

    在Java编程环境中,JFreeChart库是一个强大的工具,用于创建各种图表,包括折线图、饼图和柱状图。本篇文章将详细讲解如何利用Java、JSP以及JFreeChart来构建这些图表。 首先,我们需要了解JFreeChart库。...

    Chart of JFreeChart

    以下代码展示了如何创建一个`DefaultCategoryDataset`,添加数据,然后用`ChartFactory.createLineChart()`创建折线图。 ```java CategoryDataset xyDataset = new DefaultCategoryDataset(); xyDataset.addValue...

    jfreechart与struts2结合,实现折线图、饼状图、柱状图的页面显示

    JFreeChart是一个流行的Java库,专门用于创建各种类型的图表,包括折线图、饼状图和柱状图等。与此同时,Struts2是Java Web开发中常用的MVC框架,它简化了前端与后端的交互。当JFreeChart与Struts2结合时,可以实现...

    折线图饼状图例子加说明

    本篇文章将详细介绍如何利用编程技术生成折线图和饼状图,并提供一个实际的例子及所需的库文件。 首先,我们要知道折线图通常用于展示数据随时间的变化趋势。它通过连接数据点来描绘数值之间的连续性,特别适合分析...

Global site tag (gtag.js) - Google Analytics