CharlieShen

新人,大家多关照啦@_@

  博客中心 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 登录 ::
  3994 随笔 :: 0 文章 :: 20 评论 :: 0 Trackbacks
Cached @ 2025/6/15 3:10:35Control ASP.skins_cogitation_controls_blogstats_ascx
<2007年9月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

留言簿(14)

随笔档案

文章档案

搜索

最新评论

阅读排行榜

评论排行榜

Cached @ 2025/6/15 3:10:35Control ASP.skins_cogitation_controls_singlecolumn_ascx

在报表中插入图形

适当的插图在报表中起到画龙点睛作用,可以使枯燥冗长的数据趋势、比例等一目了然。iReport内置基于jfreechart的Chart Tool工具可以方便绘制常用的柱状图、饼图、曲线图等,可满足一般报表的需求。

如果需要插入静态图片,则要用image工具,要在图片的“Image Expression”中写图片文件的绝对路径。为了便于在PC上调试并可用于服务器,文件路径应写成“$P{imagePath}+文件名”的形式,参数$P{imagePath}在PC上设为PC机上的DOS路径,注意因为“\”是转义符号,DOS路径的“\”要写成“\\”。在Web输出图片时将服务器上的文件路径作为参数$P{imagePath}传递给输出程序,就可输出正确图片。在以下设定子报表绝对路径等场合,为了增加灵活性,都需要这样做。

iReport内置的Chart工具并没有支持jfreechart的全部功能,绘图存在局限性,例如,1.2.7之后的版本才实现标记label的旋转,旋转90度可使标记字符垂直显示,以免水平项目过多时标记显示重叠在一起而显示不出来。又如图片中的category各个项目只能是查询结果集各个记录垂直方向的项目,如果要显示同一记录中水平方向各个项目就无法绘图。另外,至今最新版本饼图还不能显示百分比。为了显示更为灵活的图片,应该使用第三方绘图工具。自行开发jfteechart绘图程序可解决这些问题。jfreeChart也是纯Java工具,一般设计Servlet用于绘图,使用image工具,在“Image Expression”中用URL表示对绘图程序Servlet的调用,new java.net.URL(URL?参数),其中URL绘图Servlet的调用路径,问号后用于传递各种绘图参数。其中为了正确传递中文参数,中文字符串应该使用标准的URL编码,即定义一个变量值为java.net.URLEncoder.encode("中文字符串","GB2312"),在image的URL中使用变量名传递中文。

分享按钮发布于: 2007-09-20 12:37 CharlieShen 阅读(327) 评论(0)  编辑 收藏