`
lpm528
  • 浏览: 83432 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

Jfreechart柱状图和饼图

 
阅读更多

需要用到的包:

jfreechart-1.0.5.jar

jcommon-1.0.9.jar

实现代码:

@Namespace("/Test")
public class Test extends ActionSupport{
	
	@Action(value = "bing")
	public String bing() {
		HttpServletResponse response=ServletActionContext.getResponse();
		response.setContentType("image/png");

  //饼图
           PieDataset dataset=createPieDataset();
           JFreeChart jfreechart=ChartFactory.createPieChart3D("图书销售比例", dataset,true , true, true);
           //PiePlot plot=(PiePlot) jfreechart.getPlot();
           ChartUtilities.writeChartAsPNG(response.getOutputStream(),jfreechart,400,300);
              //也可以保存到本地硬盘
           ChartUtilities.saveChartAsPNG(new File("e:\\chart.png"), jfreechart, 400, 300);}
	
	@Action(value ="bar")
	public String bar() {
		HttpServletResponse response=ServletActionContext.getResponse();
		response.setContentType("image/png");

		//柱状图
           CategoryDataset categorydataset=createCategoryDataset();
           JFreeChart jfreechart2=ChartFactory.createBarChart3D("08年水果销售量", "按季度", "销量", categorydataset, PlotOrientation.VERTICAL, true, true, false);  
           CategoryPlot catplot=(CategoryPlot) jfreechart2.getPlot();
       
           ChartUtilities.writeChartAsPNG(response.getOutputStream(),jfreechart2,400,300);	}
public PieDataset createPieDataset(){
  Random random=new Random();
  DefaultPieDataset dataset=new DefaultPieDataset();
  dataset.setValue("计算机", random.nextInt(100));
  dataset.setValue("英语", random.nextInt(100));
  dataset.setValue("数学", random.nextInt(100));
  return dataset;
  
 }
 
 public CategoryDataset createCategoryDataset(){
  Random random=new Random();
  String [] category1={"第一季度","第二季度","第三季度","第四季度"};
  String [] category2={"苹果","荔枝","葡萄"};
  DefaultCategoryDataset defaultdataset=new DefaultCategoryDataset();
  for(int i=0;i<category1.length;i++){
   String cat1=category1[i];
   for(int j=0;j<category2.length;j++){
    String cat2=category2[j]; 
    defaultdataset.addValue(random.nextInt(100),cat2,cat1);
   }
  }
  return defaultdataset;
 }	

}

 显示可以直接在界面输入它的action地址显示,也可以把它固定在jsp页面通过img标签显示:

<script src="<%=request.getContextPath()%>/js/jquery-1.6.2.min.js" type="text/javascript"></script>
		
	<script language="javascript">
	
    $(document).ready(function() {

	$("#se").change(function(){
	    var  chart = $("#se").val();
		
		if(chart == "1"){
			$("#zz").hide();
			$("#bb").show();
		}
		if(chart == "2"){
			$("#bb").hide();
			$("#zz").show();
		}
		if(chart ==""){
		    $("#bb").hide();
			$("#zz").hide();
		}
	  });
	
    });
	
	</script>
  </head>
  
  <body>
  
     <select  id="se">
          <option  value=""></option>
          <option  value="1">饼图
          <option  value="2">柱状图
     </select>

    <div style="display: none" id="bb">
    <img src="<%=basePath%>/Test/bing.action"/>
    </div>
    
    <div style="display: none" id="zz">
    <img src="<%=basePath%>/Test/bar.action"/>
    </div>
  </body>

 

分享到:
评论

相关推荐

    JfreeChart柱状图饼图

    这篇博文中,我们将深入探讨如何使用JFreeChart来创建柱状图和饼图,并理解其背后的源码机制。 ### 一、JFreeChart库介绍 JFreeChart库是开源的Java图形库,提供了一套完整的API,支持生成各种复杂图表,如折线图...

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    JFreeChart是一个流行的Java库,用于生成各种类型的图表,包括折线图、饼图和柱状图,甚至堆栈柱状图。这个压缩包中的"CreateChartServiceImpl.java"文件很可能包含了一个实现这些功能的服务类。 首先,我们要理解...

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

    在Java编程环境中,JFreeChart库是一个非常强大的工具,它允许开发者轻松地创建各种图表,如柱状图、饼图、时序图和折线图等。这些图表在数据分析、报表展示以及各种可视化应用中非常常见。下面我们将详细介绍如何...

    jfreechart 图形折线,饼图,柱状图等

    JFreeChart 是一个广泛使用的开源 Java 图形库,它允许开发人员轻松地创建各种图表,包括折线图、饼图和柱状图。这个库为 Java 应用程序提供了丰富的图表功能,适用于数据可视化的需求,无论是简单的报告还是复杂的...

    jfreechart 曲线图 3d饼图 3d柱状图

    **JFreeChart库详解:创建3D曲线图、3D饼图和3D柱状图** JFreeChart是一个强大的Java图形库,它提供了多种图表类型,包括曲线图、饼图和柱状图,且支持2D和3D效果。本篇文章将深入探讨如何使用JFreeChart来创建这些...

    java绘制图表(柱状图、饼图、折线图)包 jfreechart

    这个库支持多种图表类型,包括柱状图、饼图和折线图,适用于数据分析、报告生成以及可视化展示等多种场景。在Java开发中,JFreeChart提供了一个简单易用的API,使得开发者可以轻松地将复杂的统计或业务数据转化为...

    柱状图和饼图的代码写法

    创建饼图的过程与柱状图类似,但需要使用不同的方法和数据集类型。具体实现可参考官方文档或其他教程资料。 #### 总结 通过上述步骤,我们了解了如何使用JFreeChart库绘制一个简单的普通柱状图。JFreeChart的强大...

    jfreechart 柱状图、曲线图、饼图经

    JFreeChart是一款强大的Java图形库,它为开发者提供了丰富的图表类型,包括柱状图、曲线图和饼图等,使得在Java应用中展示数据变得更加直观和美观。在本篇文章中,我们将深入探讨如何利用JFreeChart来创建这些图表,...

    JFreeChart在jsp中显示柱状图、饼图

    **JFreeChart** 是一个Java库,用于生成高质量的图表,包括柱状图、饼图、线图等,广泛应用于Web应用中,如JSP(Java Server Pages)。在这个项目中,开发者通过JFreeChart在JSP页面上展示了数据的可视化,以帮助...

    自定义JFreeChart柱状图的详细说明

    综上所述,自定义JFreeChart柱状图涉及了数据准备、渲染器配置、外观调整、标签和提示信息等多个方面。通过深入理解这些知识点,开发者可以创建出满足各种需求的个性化柱状图。提供的文件如"JFreeChart中柱状图的...

    jfreechart_生成折线图,饼图,柱状图,堆栈柱状图

    jfreechart 生成折线图、饼图、柱状图、堆栈柱状图 jfreechart 是一个功能强大且流行的 Java 图表库,用于生成各种类型的图表,包括折线图、饼图、柱状图、堆栈柱状图等。在本文中,我们将使用 jfreechart 1.0.8a ...

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    标题中提到的“jfreechart生成折线图、饼图、柱状图、堆栈柱状图”是指使用Java的一个开源图形库JFreeChart来创建不同类型的统计图表。JFreeChart是一个功能全面、成熟的Java图表库,广泛应用于各种应用程序中进行...

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

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

    jfreechart曲线图饼图柱状图 免费图标 图表

    JFreeChart是一款强大的Java图表库,它为开发者提供了丰富的图形绘制功能,包括曲线图、饼图和柱状图等。这个库是免费的,适用于各种项目,无论是商业应用还是个人学习,都能从中受益。在本篇文章中,我们将深入探讨...

    JFreeChart柱状图资料

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的图表,如柱状图、饼图、线图、散点图等,适用于各种数据分析和可视化需求。本资料主要聚焦于JFreeChart在创建柱状图方面的应用。 1. **JFreeChart...

    jfreechart柱状图

    JFreeChart 是一个流行的开源 Java 图形库,它提供了丰富的图表类型,包括柱状图、饼图、线图、散点图等,广泛应用于数据分析、报告生成以及可视化应用中。这个压缩包提供的源代码示例,展示了如何使用 JFreeChart ...

    jfreechar 实现生成柱状图,饼图,曲线,

    JFreeChart 是一个开源的Java库,用于生成各种类型的图表,包括柱状图、饼图和曲线图等。它提供了一种灵活的方式来创建高质量的2D图表,可以在各种Java应用程序中使用,例如桌面应用、Web应用或者服务器端应用。下面...

Global site tag (gtag.js) - Google Analytics