葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、管理、权限控制、数据填报、负载均衡及跨平台发布。

本节主要讲解使用葡萄城报表制作多Y轴组合图表。

图表应用中,经常会有展示多项数值型数据的需求,比如分析每个月的销售额和销售量的图表,如下图:

由于销售金额与销售数量的数量级不同,如果采用简单的柱形图,销售数量将因数值太小而紧贴在X轴上,看不出各月的销售量变化趋势。此时就需要使用葡萄城报表的多Y轴功能,实现独立刻度的多Y轴组合图表。

(1)创建数据集

从报表管理门户(http://localhost:8080)点击【创建报表】,进入新报表的设计页面。点击右边栏的【数据】选项卡,再点击【数据集】右侧的【添加】如下图:

在【新建数据集】下方,选中之前创建好的示例数据源,再点击【添加】按钮,如下图:

在数据集编辑对话框中,输入SQL语句:

SELECT strftime("%m",O.订购日期) AS 订购月,COUNT(O.订单ID) AS 订单数量, SUM(OD.数量 * OD.单价 *(1- OD.折扣)) AS 订单金额
FROM 订单 O
INNER JOIN 订单明细 OD ON O.订单ID = OD.订单ID
WHERE strftime("%Y",O.订购日期) = "2011"
GROUP BY strftime("%m",O.订购日期)
order by 1

如下图:

(2)添加图表控件

从工具箱中拖放一个图表到设计区,将数据集的【订购月】字段拖放到【分类字段】区域,将【订单数量】和【订单金额】拖放到【数据字段】区域,如下图:

(3)添加新Y轴

在右侧【选项】设置面板中,点击【数据坐标轴】右侧的图标,再点击【添加项目】,即可添加一个新的Y轴,如下图:

点击【Y2】右侧的设置图标,切换到【坐标轴格式】设置面板,设置【位置】为【右边(Right)】,意为将Y2轴显示在绘图区的右侧,如下图:

(4)数据字段绑定新Y轴

在图表中选中【订单数量】字段,将右侧选项面板中的【数据坐标轴名称】从默认的【Y1】修改为【Y2】,再将【类型】选定为【折线(Line)-平滑(Smooth)】,如下图:

(5)设置外观

点击左侧工具箱上方的元素管理图标,展开报表元素树形结构,选中图表元素【图表1】,设置【皮肤】为【自定义(Custom)】,添加两个自定义的颜色,如下图:

选中元素树形目录中的【图表标题】,在选项设置面板中修改【标题】为“销售额与销售量分析”,如下图:

选中元素树形目录中的【图例】,在选项设置面板中修改【类型】为【行(Row)】,修改【位置】为【底部居中(BottomCenter)】,如下图:

选中元素树形目录中的【分类坐标轴-坐标轴标题】,在选项设置面板中修改【坐标轴标题】为【月份】,如下图:

使用同样方法,将Y1和Y2的坐标轴标题修改为【销售量】和【销售额】。再适当调整图表的尺寸。

预览效果如下图:

可以看到,由于两个Y轴的刻度最大值不同,销售额和销售量都能清楚地看到每个月的变化趋势。

转载请注明出自:葡萄城报表

关于葡萄城报表
葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、管理、权限控制、数据填报、负载均衡及跨平台发布。

千万种报表,同一种选择!获知葡萄城报表更多详情,请访问如下网站:
了解报表开发控件:http://www.gcpowertools.com.cn/products/activereports_overview.htm
了解报表服务器:http://www.grapecity.com.cn/enterprise-solutions/activereports_server

在线报表设计实战系列 – 制作多Y轴组合图表(8)的更多相关文章

  1. [.NET领域驱动设计实战系列]专题十一:.NET 领域驱动设计实战系列总结

    一.引用 其实在去年本人已经看过很多关于领域驱动设计的书籍了,包括Microsoft .NET企业级应用框架设计.领域驱动设计C# 2008实现.领域驱动设计:软件核心复杂性应对之道.实现领域驱动设计 ...

  2. [.NET领域驱动设计实战系列]专题一:前期准备之EF CodeFirst

    一.前言 从去年已经接触领域驱动设计(Domain-Driven Design)了,当时就想自己搭建一个DDD框架,所以当时看了很多DDD方面的书,例如领域驱动模式与实战,领域驱动设计:软件核心复杂性 ...

  3. NET 领域驱动设计实战系列总结

    NET 领域驱动设计实战系列总结 一.引用 其实在去年本人已经看过很多关于领域驱动设计的书籍了,包括Microsoft .NET企业级应用框架设计.领域驱动设计C# 2008实现.领域驱动设计:软件核 ...

  4. ActiveReports报表控件 V13 正式发布,提供在线报表设计和自适应报表布局

    重磅消息, ActiveReports V13 正式发布!本次更新 ActiveReports 将给您带来全新的报表设计体验:提供在线报表设计器.提供响应式布局和屏幕尺寸自适应能力.提供全新的图表…… ...

  5. AppBoxFuture: Web在线报表设计与PDF生成

      企业应用需要打印各类单证及报表,为了方便开发此类应用作者在框架内集成了报表引擎,并且实现了基于Canvas的Web在线报表设计及基于PDFJS的报表查看与打印. 一.原理浅析 报表模型:由Xml描 ...

  6. [.NET领域驱动设计实战系列]专题二:结合领域驱动设计的面向服务架构来搭建网上书店

    一.前言 在前面专题一中,我已经介绍了我写这系列文章的初衷了.由于dax.net中的DDD框架和Byteart Retail案例并没有对其形成过程做一步步分析,而是把整个DDD的实现案例展现给我们,这 ...

  7. [办公应用]如何制作二Y轴图(excel)

    有时候我们会遇到一种图表,就是X轴一致,可是Y轴的数据相差很大.如下图中,年龄和收入就不是一个数量级,在图表中显示的时候,“年龄”的曲线根本看不到(表中数据仅供举例): 解决的方法就是使用双Y轴显示, ...

  8. [.NET领域驱动设计实战系列]专题十:DDD扩展内容:全面剖析CQRS模式实现

    一.引言 前面介绍的所有专题都是基于经典的领域驱动实现的,然而,领域驱动除了经典的实现外,还可以基于CQRS模式来进行实现.本专题将全面剖析如何基于CQRS模式(Command Query Respo ...

  9. [.NET领域驱动设计实战系列]专题五:网上书店规约模式、工作单元模式的引入以及购物车的实现

    一.前言 在前面2篇博文中,我分别介绍了规约模式和工作单元模式,有了前面2篇博文的铺垫之后,下面就具体看看如何把这两种模式引入到之前的网上书店案例里. 二.规约模式的引入 在第三专题我们已经详细介绍了 ...

随机推荐

  1. Entity framework 预热

    Entity framework  预热 对于在应用程序中定义的每个DbContext类型,在首次使用时,Entity Framework都会根据数据库中的信息在内存生成一个映射视图(mapping ...

  2. python可变对象与不可变对象的差别

    一.可变对象和不可对象 Python在heap中分配的对象分成两类:可变对象和不可对象.所谓可变对象是指,对象的内容可变,而不可变对象是指内容不可变.   不可变对象:int.string.float ...

  3. Choose GitLab for your next open source project

    原文:https://b.agilob.net/choose-gitlab-for-your-next-project/ GitLab.com is a competitor of GIthub. I ...

  4. Fragment中启动一个新的Activity

    最近遇到一个小问题,就是我在主界面中用的是Fragment,其中四个Fragment,然后打算在其中一个里边,写一个TextView(准确地说是Linearout)的单击事件,然后跳转到另外一个Act ...

  5. UTF-8和GBK编码的区别

    UTF-8:对英文使用8位(一个字节).中文使用24位(三个字节)编码.对于英文字符比较多的网站一般用utf-8来编码以节省空间:包含全世界所有国家需要用到的字符,其编码的蚊子可以在各国各种支持utf ...

  6. 扒一扒HTTPS网站的内幕

    215年6月,维基媒体基金会发布公告,旗下所有网站将默认开启HTTPS,这些网站中最为人所知的当然是全球最大的在线百科-维基百科.而更早时候的3月,百度已经发布公告,百度全站默认开启HTTPS.淘宝也 ...

  7. SSL编程(2).NET最简单的客户端

      在Windows平台上,实现SSL的.NET类是System.Net.Security.SslStream类.这个类既可以用于建立SSL服务,也可以用来作为SSL客户端连接远端的SSL服务. 最简 ...

  8. Java设计模式学习记录-代理模式

    代理模式 代理模式是常见设计模式的一种,代理模式的定义是:为其他对象提供一种代理以控制对这个对象的访问. 在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起 ...

  9. 读jQuery源码释疑笔记3

    1.在jQuery.fn=jQuery.prototype中定义了方法:init, map, each , toArray, get, pushStack,   ready,  slice,first ...

  10. [转]C# NPOI 导入与导出Excel文档 兼容xlsx, xls

    本文转自:https://www.cnblogs.com/lazyneal/p/6148912.html 参考:http://www.cnblogs.com/restran/p/3889479.htm ...