永洪社区

标题: 图表上方,下拉参数筛选仅七天、近14天、近一周数据 [打印本页]

作者: yhdata_e1al5eAt    时间: 2024-3-28 11:38
标题: 图表上方,下拉参数筛选仅七天、近14天、近一周数据
图表的横坐标是时间,在图表上方有一个下拉框,下拉内容为近7天,近14天,近一月。希望下拉内容选择之后,下方图表对应展示近7天、14天、一个月的对应数据。

目前的做法:下拉参数中设置了脚本如下:
var sevenDay =dateAdd(today(),'dayofyear',-7)
var seventeenDay = dateAdd(today(),'dayofyear',-14)
var monthDay = dateAdd(today(),'dayofyear',-30)
下拉参数1.setObjects([sevenDay,seventeenDay,monthDay]);
图表直接过滤:日期小于当前时间且大于下拉参数时间。

现在的问题就是,下拉参数中展示的内容直接就是日期,对用户操作非常不友好。我希望能展示仅七天这样的文字该咋办。
或者说我想实现的这个内容,用什么方法实现比较好?


作者: yhdata_lyaa    时间: 2024-3-28 13:19
下拉参数里不是写的sevenDay,seventeenDay,monthDay吗,也可以改成列表形式,可以自己写参数的名字
试试这个日期参数插件呢https://plugins.yonghongtech.com/plugin/19
作者: 美滋滋    时间: 2024-3-28 13:27
1. 下拉参数直接用自定义数据,分别增加近7天,近14天,近30天三个数据。
2. 你的脚本仍然有用,然后根据下拉参数选择内容,设定一个共用参数,用该参数进行其他图表数据过滤。
具体实现可以用下面这段脚本
if (下拉参数1.getSelectedObjects()[0] == '近7天') {
  selectDay =dateAdd(today(),'dayofyear',-7)
}
if (下拉参数1.getSelectedObjects()[0] == '近14天') {
  selectDay =dateAdd(today(),'dayofyear',-14)
}
if (下拉参数1.getSelectedObjects()[0] == '近30天') {
  selectDay =dateAdd(today(),'dayofyear',-30)
}
其他组件用参数 selectDay 进行数据过滤
作者: 行走的蜗牛    时间: 2024-3-28 13:39
数据集里新增一个字段来处理比较好
作者: yhdata_e1al5eAt    时间: 2024-3-28 15:02
美滋滋 发表于 2024-3-28 13:27
1. 下拉参数直接用自定义数据,分别增加近7天,近14天,近30天三个数据。
2. 你的脚本仍然有用,然后根据下 ...

谢谢你的回复,现在我把下拉参数的脚本改成你这样
if (下拉参数1.getSelectedObjects()[0] == '近7天') {
  param["筛选日期"]  =dateAdd(today(),'dayofyear',-7)
}
if (下拉参数1.getSelectedObjects()[0] == '近14天') {
  param["筛选日期"]  =dateAdd(today(),'dayofyear',-14)
}
if (下拉参数1.getSelectedObjects()[0] == '近30天') {
  param["筛选日期"]  =dateAdd(today(),'dayofyear',-30)
}
但是下拉参数改变的时候,数据没有过滤是咋回事涅?
作者: yhdata_e1al5eAt    时间: 2024-3-28 15:05
yhdata_lyaa 发表于 2024-3-28 13:19
下拉参数里不是写的sevenDay,seventeenDay,monthDay吗,也可以改成列表形式,可以自己写参数的名字
试试这 ...

谢谢你的回复,但是不知道为什么我安装不了这个日期参数插件
安装的时候不是显示请求超时,就是解析失败
作者: 美滋滋    时间: 2024-3-28 15:11
yhdata_e1al5eAt 发表于 2024-3-28 15:02
谢谢你的回复,现在我把下拉参数的脚本改成你这样
if (下拉参数1.getSelectedObjects()[0] == '近7天') { ...

参数设定好了后,你用设定好的参数去给别的组件设定过滤条件了吗???
作者: yhdata_e1al5eAt    时间: 2024-3-28 15:15
美滋滋 发表于 2024-3-28 15:11
参数设定好了后,你用设定好的参数去给别的组件设定过滤条件了吗??? ...

设置了啊
作者: 美滋滋    时间: 2024-3-28 15:19
那你截图看看实际效果。
我猜想是数据类型不匹配导致的
你看看你实际进行过滤的数据是什么格式的,可以考虑用下面的脚本格式化一下你的数据
比如:
param["筛选日期"]  =formatdate(dateAdd(today(),'dayofyear',-7),'yyyy-MM-dd')
作者: yhdata_e1al5eAt    时间: 2024-3-28 15:29
美滋滋 发表于 2024-3-28 15:19
那你截图看看实际效果。
我猜想是数据类型不匹配导致的
你看看你实际进行过滤的数据是什么格式的,可以考虑 ...


作者: yhdata_e1al5eAt    时间: 2024-3-28 15:30
美滋滋 发表于 2024-3-28 15:19
那你截图看看实际效果。
我猜想是数据类型不匹配导致的
你看看你实际进行过滤的数据是什么格式的,可以考虑 ...



作者: yhdata_e1al5eAt    时间: 2024-3-28 15:31
美滋滋 发表于 2024-3-28 15:19
那你截图看看实际效果。
我猜想是数据类型不匹配导致的
你看看你实际进行过滤的数据是什么格式的,可以考虑 ...

左边是树形标签过滤组件,右边是下拉参数,下拉参数改变之后,下面的图表不会马上变化,要点一下树形标签过滤组件才会变化




欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4