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

jfreechart实例 线形图和柱状图同时显示

    博客分类:
  • J2EE
阅读更多

jfreechart实例 线形图和柱状图同时显示
package com.ami;

import org.jfree.ui.ApplicationFrame;
import java.awt.Color;
import java.awt.Dimension;
import java.text.NumberFormat;
import javax.swing.JPanel;
import org.jfree.chart.*;
import org.jfree.chart.axis.*;
import org.jfree.chart.plot.*;
import org.jfree.chart.renderer.category.LineAndShapeRenderer;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.DataUtilities;
import org.jfree.data.DefaultKeyedValues;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.general.DatasetUtilities;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
import org.jfree.util.SortOrder;

public class ParetoChartDemo1 extends ApplicationFrame
{

public ParetoChartDemo1(String s)
{
super(s);
JPanel jpanel = createDemoPanel();
jpanel.setPreferredSize(new Dimension(550, 270));
setContentPane(jpanel);
}

public static JFreeChart createChart(CategoryDataset acategorydataset[])
{
JFreeChart jfreechart = ChartFactory.createBarChart("Freshmeat Software Projects", "Language", "Projects", acategorydataset[0], PlotOrientation.VERTICAL, true, true, false);
jfreechart.addSubtitle(new TextTitle("By Programming Language"));
jfreechart.addSubtitle(new TextTitle("As at 5 March 2003"));
jfreechart.setBackgroundPaint(Color.white);
CategoryPlot categoryplot = (CategoryPlot)jfreechart.getPlot();
categoryplot.setBackgroundPaint(Color.lightGray);
categoryplot.setRangeGridlinePaint(Color.white);
CategoryAxis categoryaxis = categoryplot.getDomainAxis();
categoryaxis.setLowerMargin(0.02D);
categoryaxis.setUpperMargin(0.02D);
categoryaxis.setCategoryLabelPositions(CategoryLabelPositions.UP_90);
NumberAxis numberaxis = (NumberAxis)categoryplot.getRangeAxis();
numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
LineAndShapeRenderer lineandshaperenderer = new LineAndShapeRenderer();
NumberAxis numberaxis1 = new NumberAxis("Percent");
numberaxis1.setNumberFormatOverride(NumberFormat.getPercentInstance());
categoryplot.setRangeAxis(1, numberaxis1);
categoryplot.setDataset(1, acategorydataset[1]);
categoryplot.setRenderer(1, lineandshaperenderer);
categoryplot.mapDatasetToRangeAxis(1, 1);
categoryplot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD);
return jfreechart;
}

public static CategoryDataset[] createDatasets()
{
DefaultKeyedValues defaultkeyedvalues = new DefaultKeyedValues();
defaultkeyedvalues.addValue("C", new Integer(4843));
defaultkeyedvalues.addValue("C++", new Integer(2098));
defaultkeyedvalues.addValue("C#", new Integer(26));
defaultkeyedvalues.addValue("Java", new Integer(1901));
defaultkeyedvalues.addValue("Perl", new Integer(2507));
defaultkeyedvalues.addValue("PHP", new Integer(1689));
defaultkeyedvalues.addValue("Python", new Integer(948));
defaultkeyedvalues.addValue("Ruby", new Integer(100));
defaultkeyedvalues.addValue("SQL", new Integer(263));
defaultkeyedvalues.addValue("Unix Shell", new Integer(485));
defaultkeyedvalues.sortByValues(SortOrder.DESCENDING);
org.jfree.data.KeyedValues keyedvalues = DataUtilities.getCumulativePercentages(defaultkeyedvalues);
CategoryDataset categorydataset = DatasetUtilities.createCategoryDataset("Languages", defaultkeyedvalues);
CategoryDataset categorydataset1 = DatasetUtilities.createCategoryDataset("Cumulative", keyedvalues);
return (new CategoryDataset[] {
categorydataset, categorydataset1
});
}

public static JPanel createDemoPanel()
{
CategoryDataset acategorydataset[] = createDatasets();
JFreeChart jfreechart = createChart(acategorydataset);
return new ChartPanel(jfreechart);
}

public static void main(String args[])
{
ParetoChartDemo1 paretochartdemo1 = new ParetoChartDemo1("Pareto Chart Demo 1");
paretochartdemo1.pack();
RefineryUtilities.centerFrameOnScreen(paretochartdemo1);
paretochartdemo1.setVisible(true);
}
}
效果图

分享到:
评论

相关推荐

    jfreechart的使用-柱状图

    jFreeChart是Java编程语言中一个广泛使用的开源图表库,它提供了丰富的图表类型,包括柱状图、饼图、线形图等。博主通过具体的代码示例,详细解释了如何利用jFreeChart生成柱状图,这对于数据可视化和报告生成非常...

    jfreechart实例

    这种图表结合了柱状图和曲线图,可以同时展示分类数据和连续数据的变化。JFreeChart提供`CombinedDomainXYPlot`来组合不同类型的图表,让数据呈现更加丰富。 6. **MyEclipse集成** MyEclipse是一款强大的Java集成...

    jFreeChart实例教程

    它支持多种图表类型,包括柱状图、饼图、线形图、散点图、面积图、甘特图、热力图以及3D图表等。jFreeChart广泛应用于数据分析、报表生成、Web应用和桌面应用中,提供丰富的自定义选项以满足各种可视化需求。 **二...

    完整的JFreeChart实例.doc

    JFreeChart 是一个强大的 Java 图形库,它允许开发者创建...以上就是 JFreeChart 库在创建柱状图时涉及到的关键概念和步骤。通过理解这些组件及其作用,你可以灵活地构建和定制各种图表,以满足不同的数据可视化需求。

    JfreeChart 3D 绘图

    本篇文章将详细探讨JFreeChart库在3D绘图方面的功能,以及如何利用它来绘制柱状图和线形图的3D版本。 ### JFreeChart简介 JFreeChart是开源的Java类库,它提供了丰富的图表类型,如折线图、柱状图、饼图、散点图、...

    JFreeChart实例+包+中文API

    JFreeChart是一款开源的Java图表库,它为Java应用程序提供了丰富的图形绘制功能,包括柱状图、饼图、线形图、散点图、面积图等多种图表类型。这款库广泛应用于数据分析、报表生成以及可视化界面的设计中。在本篇文章...

    JFreeChart 实例

    这个库提供了各种图表类型,如柱状图、饼图、线形图、散点图、甘特图等,广泛应用于数据分析、报表生成以及Web应用中。在本实例中,我们将深入探讨如何在JSP页面中使用JFreeChart创建图表。 首先,理解JFreeChart的...

    jfreechart-demo

    JFreeChart是一款强大的Java图表库,它提供了丰富的图表类型,如柱状图、饼图、线形图、散点图等,广泛应用于数据分析和可视化项目中。本压缩包“jfreechart-demo”包含了JFreeChart的所有运行实例代码,为开发者...

    JFreeChart的实例(在Myeclipce下可直接运行)

    JFreeChart是一款强大的Java库,用于创建各种类型的2D图表,包括柱状图、条形图、饼图、线形图、散点图、面积图、甘特图以及时间序列图表等。它广泛应用于数据分析、报表生成和可视化展示中。在MyEclipse环境下,...

    JFreeChart_GUI_Demo

    `JFreeChart` 是一个开源的Java库,用于创建高质量的图表,包括柱状图、折线图、饼图等,广泛应用于数据分析和可视化项目。`JFreeChart_GUI_Demo` 提供了一系列示例代码,帮助开发者了解如何在Java图形用户界面(GUI...

    JFreeChartDemo java图形报表

    JFreeChart库是一个强大的开源项目,它的主要目标是提供一个可以生成多种图表的API,包括但不限于柱状图、饼图、线形图、散点图、甘特图、面积图以及3D图表等。这些图表适用于报表、数据分析、科学可视化等多种场景...

    jfreechart报表教程

    在JFreeChart中,首先需要理解基础的图表组件,如CategoryDataset(分类数据集)用于柱状图和线形图,PieDataset(饼图数据集)用于饼图,TimeSeriesCollection(时间序列集合)则适用于时间序列数据的展示。...

    jfreechart图表工程,可以导入测试

    JFreeChart 支持多种图表类型,包括但不限于:饼图(Pie Chart)、柱状图(Bar Chart)、线形图(Line Chart)、散点图(Scatter Plot)、面积图(Area Chart)等。这些图表可以用于数据可视化,帮助用户更好地理解...

    jfreechart 1.0.19 源码加文档和依赖包

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D图表,如柱状图、饼图、线形图、散点图等,适用于报表、数据分析和可视化应用。1.0.19版本是其稳定的一个版本,包含了丰富的功能和优化。 1. **...

    JFreeChar图表生成柱状图和饼状图源码

    这个库广泛应用于各种Java应用程序、服务器端脚本和Web应用中,提供丰富的图表类型,包括柱状图(Bar Chart)、饼状图(Pie Chart)以及线形图、散点图、甘特图等。在"JFreeChar图表生成柱状图和饼状图源码"的压缩包...

    JFreeChart与JSP动态图表

    JFreeChart是一个强大的开源Java库,用于生成高质量的2D图表,包括折线图、柱状图、饼图、散点图等,广泛应用在报表、数据分析和可视化应用中。而JSP则是Java平台上的服务器端脚本语言,用于生成动态网页内容。 ...

    jFreeChart应用

    描述中提到的"两个简单的实例源代码",可能是演示如何创建和显示柱状图或饼图的代码,通过这些实例,你可以快速了解jFreeChart的基本用法。 **5. 压缩包内的文件** - `viewChart.jsp`:这可能是一个JSP文件,用于...

    jfreechart-1.0.19

    这个库提供了广泛的数据可视化功能,包括折线图、柱状图、饼图、散点图、甘特图以及更多其他类型,使得开发者无需深入了解图形编程细节就能轻松地生成高质量的图表。 **主要特性** 1. **多类型图表**:JFreeChart ...

    web报表技术-JFreeChart开发技术实例

    JFreeChart是一款强大的Java图表库,适用于生成各种类型的图表,如柱状图、饼图、线形图、散点图等,广泛应用于报表系统中。本实例主要探讨如何在J2EE环境下利用JFreeChart来实现Web报表功能。 JFreeChart的核心...

Global site tag (gtag.js) - Google Analytics