下图是腾讯体育的世界杯射手榜,这个表格的特点是带有球员头像,进球括号标注了点球数量。这里介绍两种Power BI的实现方式。
射手榜的实时数据可以在腾讯体育或者CCTV官网获得,以下是链接:
https://sports.qq.com/kbsweb/qb/rank-tab.htm#/4/leaders/61
https://worldcup.cctv.com/2022/scorers/index.shtml
Power Query可以直接导入数据,导入后如下图所示:
将头像(标记为图像URL)、球员、球队字段放入表格,新建进球和点球合并的度量值,也放入表格。
进球(含点球) = [进球数] & IF( [点球数]>0 , "(" & [点球数] & ")" )
显示效果如下图所示:
头像的高度可以在下方位置调整:
这种方式进球数是一个文本,无法降序排列,这里可以利用条件格式对总进球和点球进行拆分。
表格仅仅拖拽三个字段,但是显示五列数据,不在表格列的数据为头像和点球数。
头像显示时,可以对球员字段施加条件格式图标,图标为头像列,如下图所示:
点球显示时,可以将点球数据包装成SVG矢量图图标(Power BI不支持纯文本类型的条件格式图标),点球图标如下:
点球图标 =
VAR SVG=
"data:image/svg+xml;utf8,"&"
<svg xmlns='http://www.w3.org/2000/svg' height='100' width='100'>
<text x='0' y='55' font-size='70' text-anchor='start' dominant-baseline='middle' font-family='Segoe UI'>("
& [点球数] & ")
</text>
</svg> "
RETURN
IF([点球数]>0,SVG)
将该度量值施加于进球度量值,并放在右侧,产生进球点球一体化显示的效果。
这个表格还可以进一步优化,球队名称前加上国家/地区的旗帜,旗帜和点球一样,使用SVG条件格式图标,图标可以参考本文下载: