`

jfreechart 柱状图示例- 3D效果

 
阅读更多
/**
   *
   *<p>Title: geCustomeCurrentFee</p>
   *<p>Description:TODO 得到当前话费</p>
   * @param @param mobileTeleNo
   * @param @return 设定文件
   * @return String 返回类型
   * @throws
   */
  public  String getTopWorkSummaryData(){
  String mobileTeleNo=HttpUtil.getParameter("mobileTeleNo");
   HttpServletResponse response= ServletActionContext.getResponse();
   HttpServletRequest request = ServletActionContext.getRequest();
   HttpSession session = request.getSession();
    response.setContentType("text/html; charset=GBK");
        response.setHeader("Pragma", "No-cache");
        response.setHeader("Cache-Control", "no-cache");
        response.setDateHeader("Expires", 0);
  try{
   if(LoginUtil.getUserInfo()==null){
                logger.debug("Session已失效!");
                PrintWriter writer= response.getWriter();
                writer.print("Session已失效,请重新登陆!");
                response.flushBuffer();
                return null;
            }
     try{
   session.removeAttribute("JFreeChart_Deleter");
   JFreeChart chart = createTopWorkSummaryDataChart(mobileTeleNo);   
  String filename = ServletUtilities.saveChartAsPNG(chart, 265, 180, null, session);//宽度,长度
  String graphURL = graphURL = request.getContextPath()+ "/servlet/DisplayChart?filename=" + filename;
  PrintWriter writer= response.getWriter();
            writer.print(graphURL);
            response.flushBuffer();
} catch (IOException e1) {
       logger.error(e1.getMessage());
return "";
}
     }catch(Exception e){
            try {
            PrintWriter writer= response.getWriter();
            writer.print("保存数据失败!");
response.flushBuffer();
return null;
} catch (IOException e1) {
logger.error(e.getMessage());
return "";
}
          
}
     return null;  
   }
 
   private JFreeChart createTopWorkSummaryDataChart(String mobileTeleNo) throws Exception{
JFreeChart chart = null;
DefaultCategoryDataset dataset = this.createTopWorkSummaryData(mobileTeleNo);
if(dataset != null){
    chart = ChartFactory.createBarChart3D("", "", "", dataset, PlotOrientation.VERTICAL,  true, false, false); 
chart.setBackgroundPaint(Color.WHITE); 
chart.setBackgroundImageAlpha(0.9f);
CategoryPlot plot = chart.getCategoryPlot(); 


/*
ValueAxis   rangeAxis   =   plot.getRangeAxis();
//设置最高的一个   Item   与图片顶端的距离
rangeAxis.setUpperMargin(0.35);
//设置最低的一个   Item   与图片底端的距离
rangeAxis.setLowerMargin(0.45);
//设置Y轴的最小值
//rangeAxis.setLowerBound(0);
//设置Y轴的最大值
// rangeAxis.setUpperBound(800); */
CategoryAxis domainAxis = plot.getDomainAxis(); 
domainAxis.setAxisLineVisible(false); 
NumberAxis numberaxis = (NumberAxis) plot.getRangeAxis();
TextTitle textTitle = chart.getTitle();
textTitle.setFont(new Font("黑体", Font.PLAIN, 20));
domainAxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 11));
domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));
numberaxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 12));
numberaxis.setLabelFont(new Font("黑体", Font.PLAIN, 12));
chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));
plot.setDomainAxis(domainAxis); 
BarRenderer3D renderer = new BarRenderer3D();

renderer.setBaseOutlinePaint(Color.WHITE);
// 显示每个柱的数值,并修改该数值的字体属性 
renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator()); 
// 设置每个地区所包含的平行柱的之间距离 
renderer.setItemMargin(0.1); 
// 设置柱的数值可见
renderer.setBaseItemLabelsVisible(true);
// 显示每个柱的数值,并修改该数值的字体属性 
   renderer.setItemLabelGenerator(new StandardCategoryItemLabelGenerator()); 
renderer.setItemLabelsVisible(true); 
renderer.setShadowVisible(false);
plot.setRenderer(renderer); 
// 设置柱的透明度 
plot.setForegroundAlpha(0.8f); 
}
return chart;
}

  private  DefaultCategoryDataset createTopWorkSummaryData(String mobileTeleNo) throws Exception {
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    InitiaWorkbenchManager workbenchManager=(InitiaWorkbenchManager)DefaultBeanFactory.getBean(InitiaWorkbenchManager.BEAN_NAME);
String[] results=new String[]{"AGREE"};
List<AgentWorkCountBean>  gentWorkCountList=workbenchManager.queryTopWorkSummary(results,5);
if(!gentWorkCountList.isEmpty()&&gentWorkCountList.size()>0){
for(int i=0;i<gentWorkCountList.size();i++){
AgentWorkCountBean bean=gentWorkCountList.get(i);
String userCode=gentWorkCountList.get(i).getUserCode();
String userName=userCode+"["+UserCacheUtil.getUserName(userCode)+("]");
int agreeCount=gentWorkCountList.get(i).getAgreeCount();
   
         dataset.addValue(agreeCount, userName, userCode);
    }
    
}
return dataset;
  }
分享到:
评论

相关推荐

    jfreechart1.0.3-demo-src

    JFreeChart 是一个广泛使用的 Java 图形库,它提供了丰富的图表类型,包括饼图、柱状图、线图、散点图等,使得开发者能够在 Java 应用程序中方便地创建高质量的图表。"jfreechart1.0.3-demo-src" 是 JFreeChart ...

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

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

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

    "3D柱状图示例", // 图表标题 "类别", // X轴标签 "值", // Y轴标签 dataset // 数据集 ); ChartFrame frame = new ChartFrame("我的图表", chart); frame.pack(); frame.setVisible(true); ``` 类似的...

    java使用JFreeChart制作柱形图

    在描述中提到的3D柱形图,它通过添加深度感来增加视觉效果,使得数据的表现更加立体。要创建这样的图表,首先你需要确保已经添加了 JFreeChart 的依赖到你的项目中。通常,这可以通过 Maven 或 Gradle 的依赖管理...

    jfreechart的使用-柱状图

    博主通过具体的代码示例,详细解释了如何利用jFreeChart生成柱状图,这对于数据可视化和报告生成非常有用。 **标签**:“源码”和“工具”这两个标签提示我们,这篇博客将深入到代码层面,分享jFreeChart库的具体...

    jfreechart生成单组3D变色柱状图

    根据给定的信息,本文将详细解释如何使用JFreeChart库生成单组3D变色柱状图,并确保每个柱子的颜色不同。此方法对于需要在报告、数据分析或可视化项目中展示数据时非常有用。 ### 一、理解标题与描述 #### 1.1 ...

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

    以下是一个简单的柱状图示例: ```java CategoryDataset dataset = createDataset(); JFreeChart chart = ChartFactory.createBarChart( "柱状图示例", // 标题 "类别", // 分类轴标签 "值", // 值轴标签 ...

    JFreeChart生成3D饼状图及柱状图

    以上代码示例展示了如何利用JFreeChart创建并保存3D饼状图和柱状图。在实际应用中,你可能需要根据具体需求调整数据集和图表的样式,例如添加图例、改变颜色、设置字体等。 通过JFreeChart,开发者可以方便地在Java...

    JFreeChart画统计分析柱状图

    本文将详细介绍如何使用JFreeChart这一强大的Java图表库来绘制统计分析柱状图,并通过具体的示例来展示其基本用法及一些高级特性。 #### 二、基础概念介绍 JFreeChart是一款开源的Java图表库,支持多种类型的图表...

    JFreeChart柱状图资料

    在JFreeChart中,你可以创建单列、多列、堆叠和百分比堆叠的柱状图,以及3D效果的柱状图。 3. **创建柱状图** 创建柱状图需要几个步骤:首先,你需要创建一个`CategoryDataset`对象,存储你要显示的数据;然后,用...

    jfreechart柱状图

    这个压缩包提供的源代码示例,展示了如何使用 JFreeChart 创建和展示柱状图。 柱状图是一种常用的数据可视化方式,通过矩形的长度或高度来表示数据量的大小。在商业智能和统计分析中,柱状图能够清晰地比较不同类别...

    jfreechart,jfreechart-1.0.13,jfreechart-1.0.13,jfreechart

    JFreeChart是Java中最优秀的绘图工具之一,它支持多种图表类型,包括折线图、柱状图、饼图、散点图、甘特图以及复杂的组合图等。这些图表不仅适用于数据展示,还可以用于数据分析和报告生成,广泛应用于金融、科学、...

    jfreechart-1.0.19

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

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

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

    JFreeChart让单组柱子显示不同的颜色的办法

    "彩色柱状图示例", // 图表标题 "类别", // 类别轴标签 "值", // 值轴标签 dataset, // 数据集 PlotOrientation.VERTICAL, // 布局方向 true, // 显示图例 true, // 显示工具提示 false // 显示URL文本 ); ...

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

    JFreeChart 是一个开源的Java库,用于生成高质量的2D图表,如折线图、饼图、柱状图和堆栈柱状图等。它广泛应用于数据分析、报告和应用程序中,提供丰富的自定义选项来满足各种视觉需求。在本项目中,你将找到能够...

    jfreechart-1.0.13 示例

    JFreeChart 是一个广泛使用的 Java 图形库,它允许开发者创建各种图表,包括折线图、柱状图、饼图、散点图等,用于数据可视化。这个压缩包“jfreechart-1.0.13 示例”提供了一些示例代码,帮助开发者更好地理解和...

    jfreechart-1.0.19-Demo-Source 源代码

    JFreeChart 是一个流行的 Java 图表库,它提供了丰富的图表类型,如饼图、柱状图、线图、散点图等,广泛用于数据可视化。源代码的分析对于理解其内部工作原理、自定义图表样式以及开发基于 JFreeChart 的应用程序至...

    jfreechart柱状图、饼形图、折线图源码

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D图表,包括柱状图、饼形图和折线图。在这个压缩包文件中,包含的是基于JFreeChart库的源码示例,用于帮助理解和应用这些图表类型。下面我们将深入...

    jfreechart-1.0.0-pre2-install.pdf

    JFreeChart不仅支持常见的图表类型,如饼图、柱状图、折线图等,还支持一些高级图表类型,如时间序列图、散点图、甘特图等。此外,该库还包括了图表自定义样式的功能,允许开发者根据需求调整图表的外观。 #### ...

Global site tag (gtag.js) - Google Analytics