使用 Kusto 查询语言 (KQL) 绘图时如何定义辅助 y 轴

问题描述 投票:0回答:1

我想知道在通过 Kusto 查询语言绘制查询结果时是否有办法创建辅助 y 轴。特别是通过使用 Kusto Explorer 或 Azure Web UI。

我的数据表中有时间序列变量,其大小显着不同。我希望在同一个线图或时间图中看到所有这些变量,因此需要辅助 y 轴。

我已经阅读了“渲染”文档中给出的说明(请参阅下面的链接),但是无法创建辅助 y 轴(诸如 ysplit 之类的参数没有产生我正在寻找的内容)。

https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/renderoperator?pivots=azuredataexplorer

如果有人能让我知道这是否可行,或者我是否必须使用其他工具(例如 PowerBI 或 Python)来实现此目的,那就太好了。

谢谢你

azure plot azure-data-explorer kql
1个回答
0
投票

下面的代码可以帮助您实现这一点,这可能已经足够了,但是轴的分割在 UI 和代码生成中受到了一些限制。这个答案基于您在评论中发布的示例代码:

独立轴上的所有信号类型

在这里,我们根据信号类型为每个测量创建单独的列。渲染将按照列出现的顺序进行,因此您将得到

power
作为主轴(左)和
power_reactive, freq_1, freq_2
作为右侧各自独立的轴。

datatable (timestamp: datetime, signal_type: string, measurement: real)[
'2020-01-01', 'power', 1200 ,
'2020-01-01', 'power_reactive', 500,
'2020-01-01', 'freq_1', 50.1, 
'2020-01-01', 'freq_2', 50.2,
'2020-01-02', 'power', 1300 ,
'2020-01-02', 'power_reactive', 330,
'2020-01-02', 'freq_1', 50.4, 
'2020-01-02', 'freq_2', 50.3,
'2020-01-03', 'power', 1500 ,
'2020-01-03', 'power_reactive', 250,
'2020-01-03', 'freq_1', 50.05, 
'2020-01-03', 'freq_2', 50.1,
'2020-01-04', 'power', 1500 ,
'2020-01-04', 'power_reactive', 700,
'2020-01-04', 'freq_1', 50.15, 
'2020-01-04', 'freq_2', 50.25,
]
| project timestamp,
          power_measurement = iif(signal_type == "power", measurement, real(null)),
          power_reactive_measurement = iif(signal_type == "power_reactive", measurement, real(null)),
          freq_1_measurement = iif(signal_type == "freq_1", measurement, real(null)),
          freq_2_measurement = iif(signal_type == "freq_2", measurement, real(null))
|render timechart with (ysplit =axes, ytitle="power")

将多个信号组合到主 y 轴

使用 web-ui,您可以渲染上面的代码,然后删除

reactive-power
y 轴,这会将其组合回主 y 轴,并以相同的比例显示该信号:

这将产生以下具有 3 个轴的图:

  1. 左侧的主 y 轴包含功率和无功功率 和
  2. 右侧的轴显示 freq_1
  3. 右侧的轴显示 freq_2

© www.soinside.com 2019 - 2024. All rights reserved.