免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1388 | 回复: 0
打印 上一主题 下一主题

jfreechart心得 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-01-10 08:32 |只看该作者 |倒序浏览
唉,现在客户的要求怎么越来越多,有excel转换还觉得不够,还需要有图形显示…… 还好,有JFreeChart
// 创建数据集
public CategoryDataset createDataset()
{        
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        for (int i=0; i
public JFreeChart createChart(CategoryDataset dataset)
{
  // 创建图表对象
  JFreeChart chart = ChartFactory.createBarChart
  (
   chartTitle,     // 图表标题
   "销售时间:2005年2月",  // 坐标标题
   "销售量",                  // 坐标标题
   dataset,                  // 定义绘制数据
   PlotOrientation.VERTICAL, // 直方图的方向
   true,                     // 定义图表是否包含图例
   true,                     // 定义图表是否包含提示
   false                     // 定义图表是否包含URL
   );
   return chart;
}
%>
        CategoryDataset dataset = createDataset();
        JFreeChart chart = createChart(dataset);
        // 开始自定义图表绘制的相关属性
        // 设置图表的背景颜色
        chart.setBackgroundPaint(new Color(207, 225, 235));
        // 获得图表对象的引用,用于设置更多的自定义绘制属性
        CategoryPlot plot = chart.getCategoryPlot();
        plot.setBackgroundPaint(new Color(246, 208, 146));
        plot.setDomainGridlinePaint(Color.BLACK);
        plot.setDomainGridlinesVisible(true);
        plot.setRangeGridlinePaint(Color.RED);
        // 定义是否绘制轮廓线
        BarRenderer renderer = (BarRenderer) plot.getRenderer();
        renderer.setDrawBarOutline(true);
        
        // 设置直方图的绘制渐进色
  Color color[] = new Color[bookTitle.length];
  color[0] = new Color(99,99,0);
  color[1] = new Color(255,169,66);
  color[2] = new Color(33,255, 66);
  color[3] = new Color(33,0,255);
  color[4] = new Color(255,0,66);
  for (int i = 0; i
        // 设置横轴标题文字的旋转方向
  CategoryAxis domainAxis = plot.getDomainAxis();
        domainAxis.setCategoryLabelPositions(
            CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 6.0)
        );
        
  // 结束自定义图表绘制的相关属性
  
  ChartRenderingInfo info =
       new ChartRenderingInfo(new StandardEntityCollection());
  // 设置图片生成格式
        String fileName =
     ServletUtilities.saveChartAsPNG(chart, width, height, info, session);

        // 设置图片生成路径
  String graphURL =
     request.getContextPath() + "/servlet/DisplayChart?filename=" + fileName;
%>

      


      
       " border="1" >
      


记得在web.xml(tomcat)中加入
DisplayChart
org.jfree.chart.servlet.DisplayChart
DisplayChart
/servlet/DisplayChart
现在发现开源的东西越来越好了,只要自己愿意研究没有做不了的东西

不过这个程序只是测试程序罢了,要挪到项目中无非就与数据库挂起来,然后把这些代码放到bean中,后来看多了spring,觉得与spring结合的话效果应该更好,不知道谁有此经验,唉。还是自己慢慢来吧

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/460/showart_66625.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP