微信扫码
添加专属顾问
我要投稿
利用DeepSeek和Power BI打造动态数据展示新体验。 核心内容: 1. DeepSeek+Power BI实现滚动表格效果的SVG技术介绍 2. 动态滚动展示的SVG代码和参数设置 3. 具体数据计算和表格设置的详细步骤
筛选日期最后一天班次 = CALCULATE( MAX('班表'[班次名称]), FILTER( '班表', '班表'[日期] = MAX('班表'[日期]) ))
筛选日期最后一天班次时间 = CALCULATE( MAX('班次'[班次时间]), FILTER( '班表', '班表'[日期] = MAX('班表'[日期]) ))
休息天数 = CALCULATE(COUNTROWS('班表'),FILTER('班表','班表'[班次名称]="休"))
SVG动态滚动展示cs = VAR RowHeight = 35 // 行高VAR FontSize = 12 // 字体大小VAR TableWidth = 800 // 表格总宽度VAR ColCount = 5 // 列数VAR ColWidth = TableWidth / ColCount // 列宽度VAR VisibleRows = 5 // 可见行数VAR TotalHeight = (VisibleRows + 1) * RowHeight // 总高度VAR AnimationDuration = 180 // 固定滚动速度(秒),确保稳定性// 列中心坐标计算(调整为5列)VAR Col1_X = ColWidth * 0 + ColWidth/2VAR Col2_X = ColWidth * 1 + ColWidth/2VAR Col3_X = ColWidth * 2 + ColWidth/2VAR Col4_X = ColWidth * 3 + ColWidth/2VAR Col5_X = ColWidth * 4 + ColWidth/2// 自定义颜色VAR HeaderBackgroundColor = "#41A4FF" // 表头背景色VAR TextColor = "black" // 文字颜色// 准备数据,计算必要的列VAR Data = ADDCOLUMNS( SUMMARIZE( '班表', // 汇总数据表 '班表'[坐席姓名], // 坐席姓名 '班表'[队列], // 队列 "休息天数", [休息天数], // 计算休息天数(假设已存在或者可以计算) "最后一日班次", [筛选日期最后一天班次], // 计算最后一日班次 "最后一日班次时间", [筛选日期最后一天班次时间] // 计算最后一日班次时间 ), "RowIndex", RANKX(ALL('班表'), '班表'[坐席姓名], , ASC, Dense) // 为每一行分配排名)// 修改 RowCount 计算,确保与实际显示行数一致VAR ValidDataRows = FILTER(Data, NOT(ISBLANK([最后一日班次])) && NOT(ISBLANK([最后一日班次时间])))VAR RowCount = COUNTROWS(ValidDataRows) // 使用过滤后的实际行数// 数据为空时的提示VAR EmptyMessage = IF( RowCount = 0, "<text x='" & TableWidth/2 & "' y='" & TotalHeight/2 & "' font-size='" & FontSize & "' fill='gray' dominant-baseline='middle' text-anchor='middle'>暂无数据</text>", "")// 表头设计VAR HeaderY = RowHeight/2 + FontSize/3 // 精确垂直居中公式VAR Header = "<text x='0' y='" & HeaderY & "' font-size='" & FontSize & "' fill='" & TextColor & "' font-weight='bold' dominant-baseline='middle' text-anchor='middle'> <tspan x='" & Col1_X & "'>坐席姓名</tspan> <tspan x='" & Col2_X & "'>队列</tspan> <tspan x='" & Col3_X & "'>休息天数</tspan> <tspan x='" & Col4_X & "'>最后一日班次</tspan> <tspan x='" & Col5_X & "'>最后一日班次时间</tspan></text>" // 数据行模板(同步垂直居中,修正数据引用)VAR DataRows = CONCATENATEX( ValidDataRows, VAR YPosition = [RowIndex] * RowHeight // 行的位置 RETURN "<g transform='translate(0," & YPosition & ")'> <text y='" & HeaderY & "' font-size='" & FontSize & "' fill='" & TextColor & "' dominant-baseline='middle' text-anchor='middle'> <tspan x='" & Col1_X & "'>" & [坐席姓名] & "</tspan> <tspan x='" & Col2_X & "'>" & [队列] & "</tspan> <tspan x='" & Col3_X & "'>" & [休息天数] & "</tspan> <tspan x='" & Col4_X & "'>" & [最后一日班次] & "</tspan> <tspan x='" & Col5_X & "'>" & [最后一日班次时间] & "</tspan> </text> </g>", UNICHAR(10))// 动画逻辑(无缝滚动)VAR AnimatedContent = "<g transform='translate(0," & RowHeight & ")'> <animateTransform attributeName='transform' type='translate' from='0 0' to='0 -" & (RowCount * RowHeight) & "' dur='" & IF(RowCount <= VisibleRows, 0, AnimationDuration) & "s' repeatCount='indefinite'/> " & DataRows & DataRows & "</g>" // 动画效果:无限滚动// 最终的SVG结构RETURN "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='" & TableWidth & "' height='" & TotalHeight & "' viewBox='0 0 " & TableWidth & " " & TotalHeight & "' style='background:transparent;font-family:Segoe UI'> <!-- 固定标题栏 --> <rect width='100%' height='" & RowHeight & "' fill='" & HeaderBackgroundColor & "' rx='3'/> " & Header & " <!-- 滚动遮罩 --> <mask id='scrollMask'> <rect width='100%' height='" & (TotalHeight - RowHeight) & "' y='" & RowHeight & "' fill='white'/> </mask> <!-- 滚动内容 --> <g mask='url(#scrollMask)'> " & AnimatedContent & " </g> <!-- 数据为空时的提示 --> " & EmptyMessage & " <!-- 装饰性边框 --> <rect width='100%' height='100%' fill='none' stroke='#555' stroke-width='1'/></svg>"
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-29
如何建设工业领域高质量数据集?工业过程数据统一语义建模的参考标准和实践
2025-04-29
DeepSeek+HTML,一键生成可视化图表!
2025-04-29
用 DeepSeek 识别分析“TOP SQL”
2025-04-26
大小模型结合赋能工业制造革新:10个显效可落地的应用场景
2025-04-23
从“玩”到“用”:LLM + MCP 如何真正赋能业务?——继续深挖信贷风控场景
2025-04-23
【AI Agent】搭建股票分析智能体
2025-04-23
Dify结合MCP查询数据库
2025-04-23
PandaAI:一个基于AI的对话式数据分析工具
2024-10-14
2024-10-09
2024-06-20
2025-02-04
2024-06-14
2024-06-16
2024-06-14
2025-02-09
2024-05-31
2024-07-24