1. 概述
1.1 问题描述
日期字段作为分类时,X 轴的分类名只能是具体的日期,如果想要将这些日期转化为星期格式,那么该如何实现呢?效果如下图所示:
1.2 实现思路
实现日期转星期有 2 种方法:
方法一:从 SQL 本身入手,直接在 SQL 语句中用weekday()函数转为日期即可。
方法二:设计报表时,给图表分类设置数据字典,数据字典中利用内置的switch()和weekday()函数进行处理,从而将日期的显示值改为星期。
注:本文只采用方法二进行演示,方法一用户可自行修改 SQL 语句尝试。
2. 示例
2.1 准备数据
1)新建内置数据集,新增2个列字段日期(日期型) 和金额(字符串型),如下图所示:
2)在这 2 个字段下录入 10 条数据,如下图所示:
2.2 插入图表
合并一片区域单元格,插入柱形图,并绑定柱形图数据,详细设置如下图所示:
2.3 设置数据筛选
因为是要展示一周的数据,这里我们设置下数据筛选,只取前 7 条数据,如下图所示:
2.4 设置数据字典
给数据筛选>分类下的形态设置数据字典,数据字典类型为公式,实际值和显示值对应的公式如下:
实际值:$$$
显示值:switch(weekday($$$),0,"星期天",1,"星期一",2,"星期二",3,"星期三",4,"星期四",5,"星期五",6,"星期六")
2.5 效果预览
1)PC 端
保存报表,点击分页预览,效果如下图所示:
2)移动端
同时支持 App 端和 H5 端预览,效果如下图所示:
3. 模板下载
已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Chart\图表X轴分类名日期转星期.cpt
点击下载模板:图表X轴分类名日期转星期.cpt