`
huhuanqadn
  • 浏览: 101471 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

birt动态设置要显示的图表数据

    博客分类:
  • birt
阅读更多
实现的效果是在原有的chart图上再显示其他chart图。
比如本例在原来管状图上再动态显示折线图
如下图:



首先新建报表,新建数据源,使用birt默认数据源,新建数据集,使用刚才的数据源,查询语句里写上:

select *
from orderdetails
这里我选择orderdetails表,因为该表的数值数据列比较多,方便后面的设计。且我设置了只取数据集的前10行数据,如下图:



因为birt似乎不支持top 10或者哪里应该注意的我没注意到,反正总是提示错误,拿出来运行就可以。
我们再来设计一个参数,新建参数,设置该参数为列表框,值为静态的"PRICEEACH"和“QUANTITYORDERED”(这是我们查询的数据列).如下图:



好了,我们来设计一个柱状图,设置要显示的数据,如下图:


然后设置一下柱状图的名字为chart1(过会会用到).
现在我们点击设计器空白处,选择script,在beforeFactory方法里写上以下代码:


           importPackage(Packages.org.eclipse.birt.chart.model.data.impl);
    importPackage(Packages.org.eclipse.birt.chart.model.component.impl);
    importPackage(Packages.org.eclipse.birt.chart.model.type.impl);
    importPackage(Packages.org.eclipse.birt.chart.model.attribute);
    importPackage(Packages.org.eclipse.birt.chart.model.attribute.impl);

    chart1 = reportContext.getDesignHandle().findElement("chart1");   //获取我们设置的chart图
    chartIns = chart1.getReportItem().getProperty( "chart.instance" );
    


     xAxis =chartIns.getAxes().get(0);            //得到x轴对象

     yAxis1 = xAxis.getAssociatedAxes().get(0);        //得到y轴对象
    

     for( i=0; i < params["param1"].value.length; i++){    对我们选择的参数进行遍历    
        
        var seriesDefinit = SeriesDefinitionImpl.create();                 //生成一个SeriesDefinition对象
        var lineSeries = LineSeriesImpl.create();                               //生成一个折线系列
        lineSeries.getLabel().setVisible(true);                     //设置折线显示数值
        lineSeries.getMarker().setType(MarkerType.STAR_LITERAL);          //设置拆线上的标记为星型
        lineSeries.getLineAttributes().setColor(ColorDefinitionImpl.create(111,111,111));     //设置折线的颜色
        var data = QueryImpl.create("row[\"" + params["param1"].value +   "\"]" );       //得到我们选择的参数相应的数值
        lineSeries.getDataDefinition().add(data)                   //把数据添加到折线里
        seriesDefinit.getSeries().add( lineSeries );        //添加这个折线到SeriesDefinition对象里
        yAxis1.getSeriesDefinitions().add( seriesDefinit );                  
    }

大概就是这样,最后发点牢骚,LineSeriesImpl.create()这里生成的居然不是LineSeries对象,而是Series对象,要程序运行时自动判断,我不知道为什么birt要这样设计哦。还有,setType(MarkerType.STAR_LITERAL),查看了MarkerType的字段,似乎还有一个是STAR,不过是int类型,而STAR_LITERAL却是MarkerType类型,不知道为什么这样设置,我传了个int类型的STAR进去,死活提示脚本有错(birt的错误提示能让人发疯)。传了个MarkerType类型的STAR_LITERAL就正常运行了。
更多内容,请查看birt家园
4
0
分享到:
评论
1 楼 favoriteName 2014-01-19  
你好 我想请问下 参数类型可以是个数据集么?

相关推荐

    BIRD驻波比测试仪使用指南

    软件可能提供图表显示、数据分析工具、数据导出选项等功能,便于用户深入研究测量结果并生成专业的报告。 综上所述,BIRD驻波比测试仪是通信系统维护和优化的得力助手,其多种模式和功能使用户能够全面了解和解决...

    微信小程序开发-新闻咨询类-富文本解析,折线图,MD5,bluebird案例源码.zip

    开发者需要学习如何准备数据,设置图表参数(如颜色、轴标签等),以及在小程序中动态更新图表。理解`wxCharts`的API是关键,这涉及到数据绑定和事件监听。 3. **MD5加密**:MD5是一种广泛使用的哈希函数,常用于...

    微信小程序源码模版_富文本解析,折线图,MD5,bluebird.rar

    开发者需要准备数据,然后调用API设置图表样式,最后在页面上渲染。折线图能清晰地展示趋势变化,对于监控数据或者展示动态信息非常有用。 3. **MD5加密**:MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希...

    基于微信小程序的富文本解析,折线图,MD5,bluebird.zip

    开发者需要配置数据,设置图表样式,然后在小程序页面中引入并渲染图表组件。 3. **MD5**:MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,可以将任意长度的数据转化为固定长度的摘要,常用于数据...

    微信小程序课程设计-富文本解析,折线图,MD5,bluebird.zip

    开发者需要理解数据结构化和图表配置选项,如设置数据系列、坐标轴、图例等,并且能动态更新图表数据,以实现交互式的效果。此外,还需要考虑性能优化,避免在大量数据时影响用户体验。 3. **MD5加密**: MD5...

    富文本解析,折线图,MD5,bluebird(微信小程序源码).zip

    这些库通常提供了丰富的API和配置选项,能够定制图表的颜色、样式、数据动态更新等功能。开发者需要理解如何将数据绑定到图表上,以及如何响应用户交互,例如点击事件和图例切换。 3. **MD5**: MD5(Message-...

    微信小程序源码_富文本解析,折线图,MD5,bluebird.zip

    2. 折线图:在数据分析和可视化场景中,折线图是一种常用的图表类型,用于展示数据随时间的变化趋势。微信小程序提供了丰富的图表库,如ECharts-for-WeChat,可以帮助开发者快速实现这种功能。通过JS文件处理数据并...

    小程序源码(无后台)_富文本解析,折线图,MD5,bluebird.rar

    综上所述,这个小程序源码包涉及了微信小程序的基础开发、富文本展示、数据可视化以及数据安全等关键领域,对于想要学习和开发小程序的开发者来说,是一个很好的学习资源。通过理解和运用这些知识点,开发者可以创建...

    富文本解析,折线图,MD5,bluebird.zip小程序精选源码

    综上所述,这个`bluebird.zip`小程序精选源码集合了富文本解析、数据可视化(折线图)、数据安全(MD5)和异步控制(Bluebird Promise)等多个关键点。对于开发者来说,这是一份很好的学习资源,涵盖了小程序开发中...

    微信小程序富文本解析,折线图,MD5,bluebird小程序源码(源码+源码导入视频教程+源码导入文档教程)小程序精选源码亲测可

    开发者需要了解如何配置数据、设置样式,并将图表嵌入到小程序页面中。 3. **MD5加密**: MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,可以将任意长度的信息转化为固定长度的摘要值。在小程序中...

    Birt Report View 报表

    报表元素如表格、图表、文本框等可以轻松添加,并且可以通过绑定数据源来填充动态数据。 2. **数据源集成**:Birt支持多种数据源,包括关系型数据库(如MySQL、Oracle)、XML文件、Web服务等。开发者可以根据需求...

    富文本解析,折线图,MD5,bluebird.zip

    首先,需要在小程序项目中引入`echarts-for-wx`,然后在页面的`onLoad`生命周期函数中初始化图表,设置数据,最后在对应的画布组件中渲染。通过调整`option`配置项,可以定制折线图的颜色、样式、坐标轴等细节,以...

    富文本解析,折线图,MD5,bluebird_微信小程序模板js代码前台前端H5页面源码.rar

    开发者需要准备数据,设置图表配置,然后在小程序页面上渲染图表。这有助于用户更直观地理解复杂的数据信息。 3. **MD5**: MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它将任意长度的输入转换为...

    java毕业设计&课设-富文本解析,折线图,MD5,bluebird.zip

    例如,JavaFX的`LineChart`类提供了一个用户友好的API,用于创建数据可视化图表。首先,你需要定义X轴和Y轴的数据类型,然后创建`NumberAxis`对象。接着,使用`XYChart.Series`表示数据系列,并将其添加到`LineChart...

    AlgorithmVisualizer算法可视化

    这些库不仅支持静态图表,还能动态更新数据,实现交互式图表,使用户能够更直观地理解数据。 2. **Algorithm Visualizer概述** Algorithm Visualizer是这样一个平台,它允许用户查看算法的每一步执行过程,包括...

    birt pdf 书

    3. **图表和图像**:说明如何在PDF中正确显示图表、图像和其他图形元素,包括分辨率和格式转换问题。 4. **互动元素**:如果支持,可能包括如何添加超链接、书签和表单字段到PDF报告中。 5. **性能优化**:提供技巧...

    qwt(已编译)

    这些图表不仅支持静态显示,还支持实时数据更新,适用于监控和分析动态变化的数据。 2. **刻度和标签**:库中包含自定义的刻度和标签,能够精确地表示数值,支持各种单位和格式。这使得开发者可以根据需要定制图表...

Global site tag (gtag.js) - Google Analytics