找文章 / 找答案
精选问答 更多内容

[常用脚本] 只有当下拉框控件为单选时,图表才同时出现实际值和目...

yhdata_SbmwkwIz铂金四 显示全部楼层 发表于 2023-11-5 15:55:22 |阅读模式 打印 上一主题 下一主题
本帖最后由 yhdata_SbmwkwIz 于 2023-11-5 15:56 编辑


如何实现,只有当下拉框控件为单选时,组合图表才同时出现实际值(折线)和目标值(点),当下拉框选项>1时,值显示基地的实际值?

回复

使用道具 举报

精彩评论7

18353474785青铜四 显示全部楼层 发表于 2023-11-6 08:08:54
这样要选择好合适的数据单位,还要根据比较的比率情况设置不同的柱子形式。
回复

使用道具 举报

ssg青铜二 显示全部楼层 发表于 2023-11-6 08:50:38
需要写两个计算列:
1、实际值:实际值;
2、预算值:当参数选项所选项数等于1时,则使用预算值,否则为0或者是直接end
可以试一下这个能否实现您的需求
回复

使用道具 举报

yhdata_SbmwkwIz铂金四 显示全部楼层 发表于 2023-11-6 10:18:35
ssg 发表于 2023-11-6 08:50
需要写两个计算列:
1、实际值:实际值;
2、预算值:当参数选项所选项数等于1时,则使用预算值,否则为0或 ...

这种分情况的JS要怎么写呀
回复

使用道具 举报

ssg青铜二 显示全部楼层 发表于 2023-11-7 09:05:12
写到js里面那还需要使用js作图了,应该就比较麻烦了
回复

使用道具 举报

永洪tech-shenfs青铜一 显示全部楼层 发表于 2023-11-7 11:10:12
本帖最后由 永洪tech-shenfs 于 2023-11-7 11:15 编辑
yhdata_SbmwkwIz 发表于 2023-11-6 10:18
这种分情况的JS要怎么写呀

//变化时运行的加上以下脚本,列名和组件名按照实际改改试试能不能满足场景
var data = 下拉列表参数1.getSelectedObjects()
if(data.length>1){
图表1.binding.clearYCols();
var bcol2 =  new BCol("利润", DOUBLE, false);
var qcol2 = new ChartMeasureCol(SUM, bcol2, null);
smcol2 = new SingleMarkCol(qcol2, LINE);
图表1.binding.addYCol(1, smcol2);
}else{
图表1.binding.clearYCols();
var bcol1 = new BCol("销量", DOUBLE, false);
var bcol2 =  new BCol("利润", DOUBLE, false);
var qcol1 = new ChartMeasureCol(SUM, bcol1, null);
var qcol2 = new ChartMeasureCol(SUM, bcol2, null);
smcol1 = new SingleMarkCol(qcol1, POINT);
smcol2 = new SingleMarkCol(qcol2, LINE);
图表1.binding.addYCol(0, smcol1);
图表1.binding.addYCol(1, smcol2);
}
回复

使用道具 举报

永洪tech-shenfs青铜一 显示全部楼层 发表于 2023-11-7 11:11:45
效果如下图
1.png
2.png
回复

使用道具 举报

yhdata_SbmwkwIz铂金四 显示全部楼层 发表于 2023-11-13 14:22:09
永洪tech-shenfs 发表于 2023-11-7 11:10
//变化时运行的加上以下脚本,列名和组件名按照实际改改试试能不能满足场景
var data = 下拉列表参数1.get ...

如果下拉框多选,则展示多个基地的销量值,现在JS是直接多个基地进行汇总没有分组
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部