由于不是经常摸birt,有报表开发才使用,今天做了一个曲线图,在这里把整个过程写一下,以免下次自己又忘记怎么弄了。
数据源什么的就不说了,下面是我的数据集,日期,另外两个数据:
添加曲线图,然后设置X轴Y轴,我这里Y轴有两个数据,并且由于数据库中存的日期为字符型,这里做了一下转换:
d = new Date(row["col1"].replace(/-/g, "/"));
点击next进入下一个页面,选中X-Axis设置一下type改成DateTime的格式
这里的日期格式可以调整,点击type后面的按钮,进行调整,可以选择不定义的,标准的,也可以选择高级的,高级的可以自己设定,由于我做的涉及跨度比较大就到了年和月:yy-MM
这里的规则不知道,我试了半天找到了自己想要的:
X轴的日期刻度可以通过程序设定,也可以在报表中设定,在报表中设定的话,需要先勾掉Is Category Axis ,然后在Scale里面设定
如果用程序设定的话Is Category Axis需要勾选,选中chart图在函数onRender中添加下面代码并且需要添加两个参数sdate,edate,代码部分是JAVAEYE中一个birt高手huhuanqadn写的,地址是http://huhuanqadn.iteye.com/blog/384123
importPackage(Packages.org.eclipse.birt.chart.model.data.impl);
importPackage(Packages.java.text);
importPackage(Packages.java.util);
importPackage(Packages.java.lang); //导入一些用到的包
function beforeGeneration( chart, icsc )
{
stime = icsc.getExternalContext().getScriptable().getParameterValue("stime"); //获取报表参数开始时间
etime = icsc.getExternalContext().getScriptable().getParameterValue("etime");
format = new SimpleDateFormat("yyyy-MM-dd"); //因为考虑到页面传过来的值为String类型,要转为时间类型
scal = Calendar.getInstance(); //构建Calendar实例
ecal = Calendar.getInstance();
sd = format.parse(stime); //将字符串转化为时间
ed = format.parse(etime);
scal.setTime(sd); //把时间设置到calendar里。
ecal.setTime(ed);
xAxisArray = chart.getBaseAxes(); //得到x轴对象
xAxisArray[0].setCategoryAxis(false); //设置x轴显示为我们设定的时间,如果不设置这项,x轴会默认显示我们读取数据库的时间,有兴趣的可以把他设置为true,对比一下效果就清楚了。
xAxisArray[0].getScale().setMin(DateTimeDataElementImpl.create(scal.getTimeInMillis()));
//设置时间轴最小值
xAxisArray[0].getScale().setMax(DateTimeDataElementImpl.create(ecal.getTimeInMillis()));
//设置时间轴最大值
xAxisArray[0].getScale().setUnit( xAxisArray[0].getScale().getUnit().DAYS_LITERAL);
//设置为日期间隔
xAxisArray[0].getScale().setStep(5); //设置日期间隔为5天。
}
注意:
1、如果不想根据参数时间来设置,而是固定的时间,比如一天24小时,那在设计器里图表格式的缩放比例里简单设置就可以了。如果有人不明白,我们再写相应的教程。
2、simpledateformat的parse使用要注意了,经常有人问我一parse就出错,如果不明白的请注意,format的格式要与你的字符串格式一致,format格式不是把字条串格式化成什么格式的时间,这里一定要注意。
然后给报表添加好标题,Preview,好了。如下图
- 大小: 10.1 KB
- 大小: 21.3 KB
- 大小: 18 KB
- 大小: 11.1 KB
- 大小: 26.9 KB
- 大小: 11.4 KB
分享到:
相关推荐
Birt报表注意Birt报表注意Birt报表注意Birt报表注意Birt报表注意Birt报表注意Birt报表注意Birt报表注意Birt报表注意
BIRT Business Intelligence and Reporting Tools 是为 Web 应用程序开发的基于 Eclipse 的开源报表系统 特别之处在于它是以 Java 和 JavaEE 为基础 BIRT 有两个主要组件:基于 Eclipse 的报表设计器 以及部署到应用...
birt报表详细中文文档,html格式,很详细
birt报表合并以及表头锁定功能的实现。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
BIRT是一个Eclipse-based开放源代码的报表系统,它主要是用在基于Java和J2ee的web应用程序上。BIRT主要由两部分组成:一个是基于Eclipse的报表设计器和一个可以添加到应用服务器的运行组建。BIRT同时提供一个图形...
Birt报表操作手册,有chart图,导出excel chart图显示
BIRT 在Eclipse中以透视图(perspective )的方式显示。 使用Eclipse主菜单的(Window )选项打开它。 选择“打开透视图”(Open Perspective), 然后是“报表设计”(Report Design)。 如果“报表设计”(Report ...
BIRT是一个Eclipse-based开放源代码报表系统。它主要是用在基于Java与J2EE的Web应用程序上。BIRT主要由两部分组成:一个是基于Eclipse的报表设计和一个可以加到你应用服务的运行期组件。BIRT同时也提供一个图形报表...
birt报表资料_珍藏: BIRT报表应用预研报告-0719.doc Birt使用经验谈chart2006.04.11.doc Birt使用小结.doc Birt学习经历.doc
个人整理的BIRT报表学习手册,希望能帮助到大家。
制作的birt报表实例,常用报表制作 维度 cube 脚本使用 动态参数传递
birt报表工具
Birt报表开发手册,适用于birt 2.1.3,里面有很详细的开发说明。
Birt 报表参数的使用,birt中参数的传入,使用.
该PPT主要是介绍了BIRT报表开发工具的基本知识和基本的使用方法,可以很好的帮助除此使用的新手来了解BIRT。
birt超详细教程,里面有各种教程和用法。制作报表视频、详解+案例,谢谢大家支持
BIRT报表开发教程,非常详细的教程!包含各种类型的基础报表,交叉表等!
BIRT 报表开发 中文指南,birt插件开发报表快速入门.
birt报表开发初学者开发的学习视频,用于java web 开发报表
birt报表的页面显示汉化资源文件及汉化过程说明,就是替换birt原有jar包中的英语资源文件为中文资源文件