三月上旬新内容速递丨选图攻略、内存优化与场景深化

春风送暖,学习相伴!三月上旬更新聚焦数据可视化选图、内存管理技巧、频率分析与桑基图应用,助你轻松驾驭数据分析新场景!

一、场景应用精选

【数析课堂】频率分析:用“数数”快速定位业务痛点》→通过频率统计,快速发现高频问题,精准定位业务改进点。
【桑基图】流动的“资金河流”,一眼看透业务流向》→学习桑基图绘制,追踪资金流动路径,洞察业务流转全貌。

二、技术经验分享

不止选类型,更要找对入口:数据分析选图全攻略》→深入讲解图表选择的核心逻辑,助你告别“图表选择困难症”。
内存溢出别慌张:教你如何看懂BI的“胃”,并管住它的“嘴”》→揭秘BI内存机制,掌握优化技巧,让分析更流畅。

四、社区日志更新

2026年「月更日志」社区更新合集 2.1 - 2.28》→汇总二月社区更新动态,记录成长每一步。

六、任务持续上线

【BI知识闯关】不止选类型,更要找对入口:数据分析选图全攻略》→通过闯关巩固选图知识,提升实战应用能力。
【数析课堂】频率分析知识巩固》→配套练习,加深频率分析理解,强化业务洞察。
【图表应用】桑基图追踪资金流向,发现业务奥秘》→动手实践桑基图,探索资金流向中的业务规律。
【BI知识闯关】内存溢出别慌张:教你如何看懂BI的“胃”,并管住它的“嘴”》→挑战内存管理知识,成为BI优化高手。


阳春三月,学习正当时,快来社区参与挑战,一起探索数据新视界!

麦粉社区
>
建议征集
>
帖子详情

关于组件变色类呼吸效果的研究

建议征集 发表于 2024-8-29 19:36
发表于 2024-8-29 19:36:02
本帖最后由 君茗 于 2024-8-30 09:20 编辑

之前看到过一种效果,类似下图,尝试在Smartbi中实现



采用方式:宏代码


概要原理:定时器循环修改组件样式;保证颜色以A->B->C->B->A进行循环


初步实现效果:



———————————————————————————————————————


思考:初步具有了呼吸效果。


    若想实现不间断的呼吸效果,需得到两个rgba的中间数据。


    应以步长的形式获得,这样能保证代码中try部分只写一个rgba值,然后通过步长来控制;同时阴影也可以通过此步长来控制


参考:【仪表盘】地图实现循环高亮效果 - Smartbi Insight V11帮助中心 -


          【仪表盘】根据占比设置柱图中柱子的颜色 - Smartbi Insight V11帮助中心 -


附相关代码(事件为onBeforeRender):


function main(page: IPage, portlet: IEChartsPortlet) {
    var options = portlet.getChartOptions();
    var series = options.series[0];
    var sint = 1;//此参数为变化依据,为不同值是更改不同的series样式
    var threshold = 1;//此为阈值变化依据,控制sint参数以正弦形式变化
    var interval = setInterval(function () {
        try {
            if (sint == 1) {
                series.lineStyle = {
                    "normal": {
                        "color": "rgba(30,144,255,1)",
                        "shadowColor": "rgba(30,144,255,1)",
                        "shadowBlur": 5
                    }
                }
            } else if(sint == 0.9) {
                series.lineStyle = {
                    "normal": {
                        "color": "rgba(30,144,255,0.9)",
                        "shadowColor": "rgba(30,144,255,0.9)",
                        "shadowBlur": 10
                    }
                }
            } else if(sint == 0.8) {
                series.lineStyle = {
                    "normal": {
                        "color": "rgba(30,144,255,0.8)",
                        "shadowColor": "rgba(30,144,255,0.8)",
                        "shadowBlur": 15
                    }
                }
            } else {
                series.lineStyle = {
                    "normal": {
                        "color": "rgba(30,144,255,0.7)",
                        "shadowColor": "rgba(30,144,255,0.7)",
                        "shadowBlur": 20
                    }
                }
            }   
        } catch (e) {
            console.error(e);
        } finally {
            portlet.setChartOptions(options);
            //让数据在阈值内以正弦形式变化
            if (sint == 1) {
                threshold = -threshold;
                sint = sint + 0.1 * threshold;
            } else if (sint <= 0.71) {
                threshold = -threshold;
                sint = sint + 0.1*threshold;
            } else {
                sint = sint + 0.1*threshold;
            }
        }
    } , 1000)
}

 

发表于 2024-9-4 08:55:59
若想实现不间断的呼吸效果,需得到两个rgba的中间数据。
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册

1回帖数 0关注人数 14694浏览人数
最后回复于:2024-9-4 08:55

社区

指南

AI

搜索

快速回复 返回顶部 返回列表