反馈已提交

网络繁忙

图表自身钻取并返回

  • 文档创建者:axing
  • 历史版本:16
  • 最近更新:Fairy.Zhang 于 2024-10-25
  • 1. 概述

    1.1 预期效果

    如 地图钻取,当点击省份时,可以钻取到该省份下的各城市数据。那么普通的图表如何实现这种效果呢?

    以柱形图为例,预期效果如下:

    图表初始化时显示「地区销售额」,点击「华东」地区向下钻取华东所有销售员的销售额数据,点击某个销售员向下钻取该销售员的销售额数据,点击右侧超链接返回上一层级。

    1B8B1AF2-134F-4717-8C0C-566D3F330369.GIF

    1.2 实现思路

    在不同的数据集中定义 SQL 参数,图表绑定数据时使用「单元格数据」,再使用公式获取数据集数据。

    通过给图表添加「特效>交互属性>超级链接」实现根据参数改变图表获取的数据,从而实现图表自身钻取。

    注:本文方法同样适用于 FVS 可视化看板、决策报表,详细设置请下载文末示例自行查看。

    2. 示例

    2.1 数据准备

    新建普通报表,新建三个数据库查询,分别如下:

    ds1:SELECT 地区,sum(销量) as 销售额 FROM 销量 group by 地区

    ds2:SELECT 销售员,sum(销量) as 销售额 FROM 销量  where  地区 = '${area}' group by 销售员

    ds3:SELECT 产品类型, sum(销量) as 销售额 FROM 销量  where 地区 = '${area}' and 销售员 = '${spe}' group by 产品类型

    ds2 和 ds3 中定义了地区为参数 area ,销售员为参数 spe ,且默认值均为空。以 ds3 为例,步骤如下图所示:

    Snag_6170b2e5.png

    2.2 设计图表自身钻取

    2.2.1 插入图表

    合并一片单元格区域,插入一个柱形图。

    Snag_6172d9dc.png

    2.2.2 绑定数据

    选中图表,绑定图表数据为「单元格数据」。

    • 分类名为公式:if(len($area) = 0, ds1.select(地区), if(len($spe) = 0, ds2.select(销售员), ds3.select(产品类型)))

    • 系列名为文本:销售额

    • 系列值为公式:if(len($area) = 0, ds1.select(销售额), if(len($spe) = 0, ds2.select(销售额), ds3.select(销售额)))

    分类名和系列值的公式意义为:

    当 area 地区为空时,获取 ds1 数据集中的地区作为分类,销售额作为系列值;

    当 area 不为空,spe 为空时,获取 ds2 数据集中销售员作为分类,销售额作为系列值;

    当 area 不为空,spe 也不为空时,获取 ds3 数据集中的产品类型作为分类,销售额作为系列值。

    如下图所示:

    Snag_61746222.png

    2.2.3 设置图表超链

    选中图表,选择「单元格元素>特效>交互属性>超级链接」,添加一个「图表超链-联动单元格」。

    1)联动单元格为 A1,即图表所在单元格。

    2)添加参数:

    参数名
    值类型说明
    area公式if(len($area) = 0, category, $area)

    如果地区参数area未被指定(即为空),则使用图表的分类名作为area的值;否则,area将直接使用其指定的值。

    spe公式if(len($area) = 0, "", if(len($spe) = 0, category, $spe))

    如果地区参数area未被指定(即为空),销售员参数spe也将被设置为空;如果地区参数area被指定,销售员参数spe未被指定(即为空),则使用图表的分类名作为销售员参数spe的值;如果地区参数area和销售员参数spe都被指定,则spe将使用其指定的值

    如下图所示:

    Snag_617fe40e.png

    2.2.4 设置标题

    图表标题使用公式:if(len($area) = 0, "地区销售额", $area + $spe + "销售额")。如下图所示:

    公式说明:

    当参数 area 为空时,标题为「地区销售额」;

    当图表下钻时,图表标题根据 area 和 spe 参数的值变化,为「对应地区+对应销售员+销售额」。

    Snag_61867e6c.png

    2.2.5 效果预览

    完成以上步骤,就可以实现图表的自身钻取了。点击 分页预览 效果如下图所示:

    26A7973C-4AD9-4CB1-8704-DC307F774324.GIF

    2.3 设计图表钻取后返回

    我们希望图表钻取后,可以再返回上一层级。这种情况我们需要借助动态参数来实现点击单元格返回对应层级。

    注:使用动态参数,整个模板都会刷新,使用到该参数的地方均会联动发生变化。

    1)在右侧单元格中,输入文本「返回地区层级」。给其添加一个「动态参数」类型的超级链接,链接中添加参数  area ,不给参数赋值。

    即实现参数 area 为空的场景,图表则获取 ds1 数据集中的地区作为分类,销售额作为系列值。如下图所示:

    Para1.png

    2)同理,在另一个单元格中输入文本「返回销售员层级」。给其添加一个「动态参数」类型的超级链接,链接中添加参数  spe ,不给其赋值。

    即实现 spe 为空的场景,图表则获取 ds2 数据集中销售员作为分类,销售额作为系列值。如下图所示:

    Para.png

    2.4 效果预览

    2.4.1 PC 端

    保存报表,点击 分页预览,效果如 1.1 节预期效果所示。

    2.4.2 移动端

    App 端和 HTML5 端均支持,效果如下图所示:

    08026B23-A971-48D2-A335-DAA83C4AD8BB.GIF

    3. 示例拓展

    在 FVS可视化看板、决策报表中,实现思路与普通报表相同,实现方式则根据不同报表类型,有不同的实现方式。

    以下仅作简单介绍,详情请下载文末模板查看。

    3.1 FVS可视化看板示例

    FVS 可视化看板中,图表组件需添加 组件联动 事件,设置联动范围与对象,参数设置与普通报表一致。如下图所示:

    Snag_1744cc6.png

    钻取后返回可使用 FVS标题组件 同理设置组件联动事件即可,以「返回地区层级」为例。如下图所示:

    Snag_1780942.png

    3.2 决策报表示例

    决策报表中,图表块添加的超级链接为「当前表单对象」。如下图所示:

    Snag_1a96917.png

    钻取后返回,同理对单元格设置「当前决策报表」超级链接即可。如下图所示:

    Snag_1ab5ecc.png

    4. 模板下载

    附件列表


    主题: 图表应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持