如何在KQL中修改Kusto时间图表图例名称以移除冗余文本
要解决Kusto时间图表图例冗余的问题,核心思路是修改生成图表的列名——因为时间图表的图例默认直接使用查询结果的列名。下面分几种常见场景给你具体的KQL实现方案:
场景1:仅展示单个目标系列(比如Win_T3)
如果你的查询只针对Win_T3这个值,直接在聚合步骤给结果列指定别名即可:
// 替换为你的表名、时间范围、数值列名 YourTableName | where TimeGenerated > ago(1h) and ValueName == "Win_T3" // 筛选目标ValueName | summarize Win_T3 = sum(YourValueColumn) // 直接将列名设为Win_T3 by bin(TimeGenerated, 5m) // 按需求设置时间分桶粒度 | render timechart
执行后,时间图表的图例就会直接显示Win_T3,完全去掉冗余的前缀后缀。
场景2:同时展示多个ValueName系列
如果需要展示多个系列(比如Win_T3、Win_T4等),可以用pivot函数将ValueName的值直接转成列名,批量清理图例:
// 替换为你的表名、时间范围、数值列名 YourTableName | where TimeGenerated > ago(1h) | summarize MetricSum = sum(YourValueColumn) by ValueName, bin(TimeGenerated, 5m) | pivot(ValueName, any(MetricSum)) // 将每个ValueName转为独立列,列名就是ValueName的值 | render timechart
这样每个系列的图例都会直接显示对应的ValueName(比如Win_T3、Win_T4),自动去掉“ValueName: X : Value”这类冗余格式。
补充:使用make-series的场景
如果你的查询用了make-series函数生成时序数据,只需用project-rename重命名自动生成的列即可:
// 替换为你的表名、时间范围、数值列名 YourTableName | make-series MetricSum = sum(YourValueColumn) on TimeGenerated from ago(1h) to now() step 5m by ValueName | project-rename Win_T3 = MetricSum_Win_T3 // 将自动生成的列名重命名为Win_T3 // 若有多个系列,继续添加其他重命名规则即可 | render timechart
内容的提问来源于stack exchange,提问作者neha
相关产品推荐
相关产品推荐

