转换数据
转换是一种强大的方式,可以在系统应用可视化之前操作查询返回的数据。使用转换,您可以
- 重命名字段
- 连接时间序列/类 SQL 数据
- 跨查询执行数学运算
- 将一个转换的输出用作另一个转换的输入
对于依赖同一数据集的多个视图的用户,转换提供了一种创建和维护大量仪表板的有效方法。
您还可以将一个转换的输出用作另一个转换的输入,从而获得性能提升。
有时系统无法绘制转换后的数据。发生这种情况时,单击可视化上方的
表格视图
开关以切换到数据的表格视图。这可以帮助您了解转换的最终结果。
转换类型
Grafana 提供了多种可以转换数据的方式。有关转换的完整列表,请参阅转换函数。
转换顺序
当存在多个转换时,Grafana 会按照列出的顺序应用它们。每个转换都会创建一个结果集,然后传递到处理管道中的下一个转换。
Grafana 应用转换的顺序直接影响结果。例如,如果您使用“Reduce”转换将一列的所有结果浓缩为单个值,则只能对该单个值应用转换。
向数据添加转换函数
以下步骤指导您向数据添加转换。本文档不包括每种转换类型的步骤。有关转换的完整列表,请参阅转换函数。
- 导航到要添加一个或多个转换的面板。
- 将鼠标悬停在面板的任何部分上,以在右上角显示操作菜单。
- 单击菜单并选择 编辑。
- 单击 转换 选项卡。
- 单击转换。将出现一个转换行,您可以在其中配置转换选项。有关如何配置转换的更多信息,请参阅转换函数。有关可用计算的信息,请参阅计算类型。
- 要应用另一个转换,请单击 添加转换。此转换作用于前一个转换返回的结果集。
调试转换
要查看转换的输入和输出结果集,请单击转换行右侧的错误图标。
输入和输出结果集可以帮助您调试转换。

禁用转换
您可以通过单击转换行右上角的眼睛图标来禁用或隐藏一个或多个转换。这将禁用该特定转换的应用操作,并可以帮助您在连续更改多个转换时识别问题。

筛选转换
如果您的面板使用多个查询,您可以筛选这些查询并将所选转换仅应用于其中一个查询。为此,请单击转换行右上角的筛选器图标。这将打开一个下拉列表,其中包含面板上使用的查询列表。从这里,您可以选择要转换的查询。
您还可以按注释(包括范例)进行筛选,以对其应用转换。执行此操作时,字段列表会更改以反映注释或范例工具提示中的字段。
如果您的面板具有多个查询或数据源(即面板或注释数据),则始终显示筛选器图标,但如果应用了以前的转换来合并查询的输出,则它可能不起作用。这是因为一个转换采用前一个转换的输出。
删除转换
我们建议您删除不需要的转换。当您删除转换时,您将从可视化中删除数据。
开始之前
- 确定所有依赖转换的仪表板,并通知受影响的仪表板用户。
要删除转换:
- 打开面板进行编辑。
- 单击 转换 选项卡。
- 单击要删除的转换旁边的垃圾桶图标。

转换函数
您可以对数据执行以下转换。
从计算添加字段
使用此转换添加从其他两个字段计算的新字段。每个转换允许您添加一个新字段。
- 模式 - 选择模式
- 减少行 - 独立地对所选字段的每一行应用选定的计算。
- 二元运算 - 对来自两个选定字段的单行中的值应用基本二元运算(例如,求和或乘法)。
- 一元运算 - 对来自选定字段的单行中的值应用基本一元运算。可用运算包括
- 绝对值 (abs) - 返回给定表达式的绝对值。它表示其到零的距离,为正数。
- 自然指数 (exp) - 返回 e 的给定表达式的幂。
- 自然对数 (ln) - 返回给定表达式的自然对数。
- 向下取整 (floor) - 返回小于或等于给定表达式的最大整数。
- 向上取整 (ceil) - 返回大于或等于给定表达式的最小整数。
- 累积函数 - 对当前行和所有前面的行应用函数。
- 总计 - 计算直到当前行(包括当前行)的累积总和。
- 平均值 - 计算直到当前行(包括当前行)的平均值。
- 窗口函数 - 应用窗口函数。窗口可以是 尾随 或 居中。对于尾随窗口,当前行将是窗口中的最后一行。对于居中窗口,窗口将以当前行为中心。对于偶数窗口大小,窗口将以当前行和上一行之间为中心。
- 平均值 - 计算移动平均值或运行平均值。
- Stddev - 计算移动标准差。
- 方差 - 计算移动方差。
- 行索引 - 插入一个包含行索引的字段。
- 字段名称 - 选择要在新字段的计算中使用的字段名称。
- 计算 - 如果选择 减少行 模式,则会出现 计算 字段。单击字段以查看可用于创建新字段的计算选项列表。有关可用计算的信息,请参阅计算类型。
- 运算 - 如果选择 二元运算 或 一元运算 模式,则会出现 运算 字段。这些字段允许您对来自选定字段的单行中的值应用基本数学运算。您还可以将数值用于二元运算。
- 所有数字字段 - 设置 二元运算 的左侧以将计算应用于所有数字字段。
- 作为百分位数 - 如果选择 行索引 模式,则会出现 作为百分位数 开关。此开关允许您将行索引转换为总行数的百分比。
- 别名 - (可选)输入新字段的名称。如果将此项留空,则字段将命名为与计算匹配。
- 替换所有字段 - (可选)如果您想隐藏所有其他字段并在可视化中仅显示计算字段,请选择此选项。
在下面的示例中,我们将两个字段相加并将其命名为 Sum。

连接字段
使用此转换将所有帧中的所有字段合并为一个结果。
例如,如果您有单独的查询检索温度和正常运行时间数据(查询 A)以及空气质量指数和错误信息(查询 B),则应用连接转换会生成一个合并的数据帧,其中包含一个视图中的所有相关信息。
考虑以下情况
查询 A
温度 | 正常运行时间 |
---|---|
15.4 | 1230233 |
查询 B
AQI | 错误 |
---|---|
3.2 | 5 |
连接字段后,数据帧将为
温度 | 正常运行时间 | AQI | 错误 |
---|---|---|---|
15.4 | 1230233 | 3.2 | 5 |
此转换简化了从不同来源合并数据的过程,从而为分析和可视化提供了全面的视图。
从查询结果配置
使用此转换选择查询并提取标准选项,例如 最小值、最大值、单位 和 阈值,并将它们应用于其他查询结果。此功能支持基于特定查询返回的数据的动态可视化配置。
选项
- 配置查询 - 选择返回要用作配置的数据的查询。
- 应用于 - 选择应应用配置的字段或序列。
- 应用于选项 - 指定字段类型或使用字段名称正则表达式,具体取决于您在 应用于 中的选择。
字段映射表
在配置选项下方,您将找到字段映射表。此表列出了在配置查询返回的数据中找到的所有字段,以及 用作 和 选择 选项。它提供了对将字段映射到配置属性的控制,并且对于多行,它允许您选择要选择的值。
示例
输入[0](来自查询:A,名称:ServerA)
时间 | 值 |
---|---|
1626178119127 | 10 |
1626178119129 | 30 |
输入[1](来自查询:B)
时间 | 值 |
---|---|
1626178119127 | 100 |
1626178119129 | 100 |
输出(与输入[0] 相同,但现在在“值”字段上配置)
时间 | 值(配置:最大值=100) |
---|---|
1626178119127 | 10 |
1626178119129 | 30 |
源数据中的每一行都变成一个单独的字段。现在每个字段都设置了最大配置选项。诸如 最小值、最大值、单位 和 阈值 等选项是字段配置的一部分。如果设置了这些选项,则可视化将使用它们,而不是面板编辑器选项窗格中手动配置的任何选项。
值映射
您还可以将查询结果转换为值映射。使用此选项,配置查询结果中的每一行都定义一个值映射行。请参见以下示例。
配置查询结果
值 | 文本 | 颜色 |
---|---|---|
L | 低 | 蓝色 |
M | 中 | 绿色 |
H | 高 | 红色 |
在字段映射中指定
字段 | 用作 | 选择 |
---|---|---|
值 | 值映射/值 | 所有值 |
文本 | 值映射/文本 | 所有值 |
颜色 | 值映射/颜色 | 所有值 |
Grafana 从您的查询结果构建值映射,并将它们应用于实际数据查询结果。您应该看到值根据配置查询结果进行映射和着色。
注意: 当您将此转换用于阈值时,可视化将继续使用面板的基本阈值。
转换字段类型
使用此转换修改指定字段的字段类型。
此转换具有以下选项
- 字段 - 从可用字段中选择
- 为 - 选择要转换成的字段类型
- 数值 - 尝试将值设为数字
- 字符串 - 将值设为字符串
- 时间 - 尝试将值解析为时间
- 输入将根据 Moment.js 解析格式 进行解析
- 它会将数值输入解析为毫秒级的 Unix 纪元时间戳。如果输入以秒为单位,则必须将输入乘以 1000。
- 将显示一个选项,用于通过类似于 yyyy-mm-dd 或 DD MM YYYY hh:mm:ss 的字符串指定 DateFormat 作为输入
- 布尔值 - 将值设为布尔值
- 枚举 - 将值设为枚举
- 将显示一个表格来管理枚举
- 其他 - 尝试将值解析为 JSON
例如,考虑以下查询,可以通过选择时间字段作为“时间”并将日期格式指定为 YYYY 来修改该查询。
示例查询
时间 | 标记 | 值 |
---|---|---|
2017-07-01 | 上方 | 25 |
2018-08-02 | 下方 | 22 |
2019-09-02 | 下方 | 29 |
2020-10-04 | 上方 | 22 |
结果
转换后的查询
时间 | 标记 | 值 |
---|---|---|
2017-01-01 00:00:00 | 上方 | 25 |
2018-01-01 00:00:00 | 下方 | 22 |
2019-01-01 00:00:00 | 下方 | 29 |
2020-01-01 00:00:00 | 上方 | 22 |
此转换允许您灵活地调整数据类型,确保可视化中的兼容性和一致性。
提取字段
使用此转换选择数据源并以不同格式从中提取内容。此转换具有以下字段
- 来源 - 选择数据源的字段。
- 格式 - 选择以下选项之一
- JSON - 从来源解析 JSON 内容。
- 键值对 - 从来源解析格式为“a=b”或“c:d”的内容。
- RegExp - 使用正则表达式和命名捕获组(例如
/(?<NewField>.*)/
)解析内容。 - 自动 - 自动发现字段。
- 替换所有字段 - (可选)选择此选项可隐藏所有其他字段并在可视化中仅显示计算字段。
- 保留时间 - (可选)仅当 替换所有字段 为 true 时可用。在输出中保留时间字段。
考虑以下数据集
数据集示例
时间戳 | json_data |
---|---|
1636678740000000000 | {“value”: 1} |
1636678680000000000 | {“value”: 5} |
1636678620000000000 | {“value”: 12} |
您可以使用以下配置准备要由时间序列面板使用的数据
- 来源:json_data
- 格式:JSON
- 字段:value
- 别名:my_value
- 替换所有字段:true
- 保留时间:true
这将生成以下输出
转换后的数据
时间戳 | my_value |
---|---|
1636678740000000000 | 1 |
1636678680000000000 | 5 |
1636678620000000000 | 12 |
此转换允许您以各种方式提取和格式化数据。您可以根据特定的数据需求自定义提取格式。
从资源查找字段
使用此转换通过从外部来源查找其他字段来丰富字段值。
此转换具有以下字段
- 字段 - 从数据集中选择一个文本字段。
- 查找 - 从 国家/地区、美国州 和 机场 中选择。
此转换当前支持空间数据。
例如,如果您有以下数据
数据集示例
位置 | 值 |
---|---|
AL | 0 |
AK | 10 |
亚利桑那州 | 5 |
阿肯色州 | 1 |
某处 | 5 |
使用此配置
- 字段:位置
- 查找:美国州
您将获得以下输出
转换后的数据
位置 | ID | 名称 | 经度 | 纬度 | 值 |
---|---|---|---|---|---|
AL | AL | 阿拉巴马州 | -80.891064 | 12.448457 | 0 |
AK | AK | 阿肯色州 | -100.891064 | 24.448457 | 10 |
亚利桑那州 | 5 | ||||
阿肯色州 | 1 | ||||
某处 | 5 |
此转换允许您通过从外部来源获取额外信息来扩充数据,为分析和可视化提供更全面的数据集。
按查询 refId 过滤数据
使用此转换来隐藏具有多个查询的面板中的一个或多个查询。
Grafana 以深灰色文本显示查询标识字母。单击查询标识符以切换过滤。如果查询字母为白色,则显示结果。如果查询字母为深色,则结果被隐藏。
注意: 此转换不适用于 Graphite,因为此数据源不支持将返回的数据与查询相关联。
在下面的示例中,面板有三个查询 (A、B、C)。我们从可视化中移除了 B 查询。

按值过滤数据
使用此转换可以直接在可视化中选择性地过滤数据点。此转换提供了基于应用于所选字段的一个或多个条件包含或排除数据的选项。
如果您的数据源本身不支持按值过滤,则此转换非常有用。如果您正在使用共享查询,您也可以使用它来缩小要显示的值的范围。
所有字段的可用条件为
- 正则表达式 - 匹配正则表达式。
- 为空 - 如果值为空则匹配。
- 不为空 - 如果值不为空则匹配。
- 等于 - 如果值等于指定值则匹配。
- 不同 - 如果值与指定值不同则匹配。
字符串字段的可用条件为
- 包含子字符串 - 如果值包含指定的子字符串则匹配(不区分大小写)。
- 不包含子字符串 - 如果值不包含指定的子字符串则匹配(不区分大小写)。
数字字段的可用条件为
- 大于 - 如果值大于指定值则匹配。
- 小于 - 如果值小于指定值则匹配。
- 大于或等于 - 如果值大于或等于则匹配。
- 小于或等于 - 如果值小于或等于则匹配。
- 范围 - 匹配指定最小值和最大值之间的范围,包括最小值和最大值。
考虑以下数据集
数据集示例
时间 | 温度 | 海拔 |
---|---|---|
2020-07-07 11:34:23 | 32 | 101 |
2020-07-07 11:34:22 | 28 | 125 |
2020-07-07 11:34:21 | 26 | 110 |
2020-07-07 11:34:20 | 23 | 98 |
2020-07-07 10:32:24 | 31 | 95 |
2020-07-07 10:31:22 | 20 | 85 |
2020-07-07 09:30:57 | 19 | 101 |
如果您包含温度低于 30°C 的数据点,则配置将如下所示
- 过滤器类型:“包含”
- 条件: ‘温度’ 匹配 ‘小于’ ‘30’ 的行
您将获得以下结果,其中仅包含温度低于 30°C 的温度
转换后的数据
时间 | 温度 | 海拔 |
---|---|---|
2020-07-07 11:34:22 | 28 | 125 |
2020-07-07 11:34:21 | 26 | 110 |
2020-07-07 11:34:20 | 23 | 98 |
2020-07-07 10:31:22 | 20 | 85 |
2020-07-07 09:30:57 | 19 | 101 |
您可以向过滤器添加多个条件。例如,您可能只想包含海拔高于 100 的数据。为此,请将该条件添加到以下配置中
- 过滤器类型:“包含” “匹配所有” 条件的行
- 条件 1: ‘温度’ 匹配 ‘小于’ ‘30’ 的行
- 条件 2: ‘海拔’ 匹配 ‘大于’ ‘100’ 的行
当您有多个条件时,您可以选择要将操作(包含/排除)应用于 匹配所有 条件的行,还是 匹配任何 您添加的条件的行。
在上面的示例中,我们选择了 匹配所有,因为我们想要包含温度低于 30°C 且 海拔高于 100 的行。如果我们想要包含温度低于 30°C 或 海拔高于 100 的行,那么我们将选择 匹配任何。这将包括原始数据中的第一行,其温度为 32°C(不匹配第一个条件)但海拔为 101(匹配第二个条件),因此它被包含在内。
无效或配置不完整的条件将被忽略。
这种通用的数据过滤转换使您可以根据特定条件选择性地包含或排除数据点。自定义条件以调整您的数据呈现,以满足您独特的分析需求。
按名称过滤字段
使用此转换来选择性地删除查询结果的部分内容。有三种方法可以过滤字段名称
使用正则表达式
当您使用正则表达式进行过滤时,将包含与正则表达式匹配的字段名称。
例如,从输入数据
时间 | dev-eu-west | dev-eu-north | prod-eu-west | prod-eu-north |
---|---|---|---|---|
2023-03-04 23:56:23 | 23.5 | 24.5 | 22.2 | 20.2 |
2023-03-04 23:56:23 | 23.6 | 24.4 | 22.1 | 20.1 |
使用正则表达式 ‘prod.*’ 的结果将是
时间 | prod-eu-west | prod-eu-north |
---|---|---|
2023-03-04 23:56:23 | 22.2 | 20.2 |
2023-03-04 23:56:23 | 22.1 | 20.1 |
正则表达式可以包含插值的仪表板变量,方法是使用 ${variableName} 语法。
手动选择包含的字段
单击并取消选中字段名称以将其从结果中删除。正则表达式匹配的字段仍然包含,即使它们未被选中。
使用仪表板变量
启用“来自变量”以允许您选择用于包含字段的仪表板变量。通过设置具有多个选项的仪表板变量,可以在多个可视化中显示相同的字段。

这是在我们应用转换以删除 Min 字段后的表格。

这是使用 Stat 可视化的相同查询。

此转换提供了灵活性,可以调整您的查询结果,以专注于有效分析和可视化所需的特定字段。
格式化字符串
使用此转换来自定义字符串字段的输出。此转换具有以下字段
- 大写 - 将整个字符串格式化为大写字符。
- 小写 - 将整个字符串格式化为小写字符。
- 句首字母大写 - 将字符串的第一个字符格式化为大写。
- 标题首字母大写 - 将字符串中每个单词的第一个字符格式化为大写。
- Pascal 大小写 - 将字符串中每个单词的第一个字符格式化为大写,并且单词之间不包含空格。
- Camel 大小写 - 将字符串中每个单词的第一个字符格式化为大写,但第一个单词除外,并且单词之间不包含空格。
- Snake 大小写 - 将字符串中的所有字符格式化为小写,并使用下划线代替单词之间的空格。
- Kebab 大小写 - 将字符串中的所有字符格式化为小写,并使用破折号代替单词之间的空格。
- Trim - 删除字符串中所有前导和尾随空格。
- 子字符串 - 返回字符串的子字符串,使用指定的起始和结束位置。
此转换提供了一种便捷的方式来标准化和调整字符串数据的呈现方式,以实现更好的可视化和分析。
格式化时间
使用此转换来自定义时间字段的输出。可以使用 Moment.js 格式字符串格式化输出。例如,如果您只想显示时间字段的年份,则可以使用格式字符串 ‘YYYY’ 来显示日历年(例如,1999 或 2012)。
转换前
时间戳 | 事件 |
---|---|
1636678740000000000 | 系统启动 |
1636678680000000000 | 用户登录 |
1636678620000000000 | 数据已更新 |
应用 ‘YYYY-MM-DD HH:mm:ss’ 后
时间戳 | 事件 |
---|---|
2021-11-12 14:25:40 | 系统启动 |
2021-11-12 14:24:40 | 用户登录 |
2021-11-12 14:23:40 | 数据已更新 |
此转换使您可以调整可视化中的时间表示形式,从而在显示时间数据时提供灵活性和精确性。
注意: 此转换在 Grafana 10.1+ 版本中作为 alpha 功能提供。
分组依据
使用此转换按指定的字段(列)值对数据进行分组,并对每个组执行计算。单击以查看计算选项列表。有关可用计算的信息,请参阅计算类型。
这是一个原始数据的示例。
时间 | 服务器 ID | CPU 温度 | 服务器状态 |
---|---|---|---|
2020-07-07 11:34:20 | 服务器 1 | 80 | 关机 |
2020-07-07 11:34:20 | 服务器 3 | 62 | 正常 |
2020-07-07 10:32:20 | 服务器 2 | 90 | 过载 |
2020-07-07 10:31:22 | 服务器 3 | 55 | 正常 |
2020-07-07 09:30:57 | 服务器 3 | 62 | 正在重启 |
2020-07-07 09:30:05 | 服务器 2 | 88 | 正常 |
2020-07-07 09:28:06 | 服务器 1 | 80 | 正常 |
2020-07-07 09:25:05 | 服务器 2 | 88 | 正常 |
2020-07-07 09:23:07 | 服务器 1 | 86 | 正常 |
此转换分两个步骤进行。首先,您指定一个或多个字段以按其分组数据。这将把这些字段的所有相同值组合在一起,就像您对它们进行排序一样。例如,如果我们按“服务器 ID”字段分组,那么它将以这种方式对数据进行分组
时间 | 服务器 ID | CPU 温度 | 服务器状态 |
---|---|---|---|
2020-07-07 11:34:20 | 服务器 1 | 80 | 关机 |
2020-07-07 09:28:06 | 服务器 1 | 80 | 正常 |
2020-07-07 09:23:07 | 服务器 1 | 86 | 正常 |
2020-07-07 10:32:20 | 服务器 2 | 90 | 过载 |
2020-07-07 09:30:05 | 服务器 2 | 88 | 正常 |
2020-07-07 09:25:05 | 服务器 2 | 88 | 正常 |
2020-07-07 11:34:20 | 服务器 3 | 62 | 正常 |
2020-07-07 10:31:22 | 服务器 3 | 55 | 正常 |
2020-07-07 09:30:57 | 服务器 3 | 62 | 正在重启 |
“服务器 ID”值相同的所有行都分组在一起。
选择要按其分组数据的字段后,您可以对其他字段添加各种计算,并将计算应用于每组行。例如,我们可能想要计算每个服务器的平均 CPU 温度。因此,我们可以添加应用于“CPU 温度”字段的平均值计算,以获得以下结果
服务器 ID | CPU 温度(平均值) |
---|---|
服务器 1 | 82 |
服务器 2 | 88.6 |
服务器 3 | 59.6 |
我们可以添加多个计算。例如
- 对于“时间”字段,我们可以计算最后值,以了解每个服务器最后一次接收到数据点的时间
- 对于“服务器状态”字段,我们可以计算最后值,以了解每个服务器的最新状态值
- 对于“温度”字段,我们还可以计算最后值,以了解每个服务器的最新监控温度
然后我们将得到
服务器 ID | CPU 温度(平均值) | CPU 温度(最后值) | 时间(最后值) | 服务器状态(最后值) |
---|---|---|---|---|
服务器 1 | 82 | 80 | 2020-07-07 11:34:20 | 关机 |
服务器 2 | 88.6 | 90 | 2020-07-07 10:32:20 | 过载 |
服务器 3 | 59.6 | 62 | 2020-07-07 11:34:20 | 正常 |
此转换允许您从时间序列中提取基本信息,并方便地呈现它。
分组到矩阵
使用此转换来组合三个字段——用作查询输出中的列、行和单元格值字段的输入——并生成矩阵。矩阵计算如下
原始数据
服务器 ID | CPU 温度 | 服务器状态 |
---|---|---|
服务器 1 | 82 | 正常 |
服务器 2 | 88.6 | 正常 |
服务器 3 | 59.6 | 关机 |
我们可以使用“服务器状态”的值作为列名,“服务器 ID”的值作为行名,以及“CPU 温度”作为每个单元格的内容来生成矩阵。每个单元格的内容将出现在现有列(“服务器状态”)和行组合(“服务器 ID”)中。对于其余单元格,您可以选择要显示的 value:Null、True、False 或 Empty。
输出
服务器 ID服务器状态 | 正常 | 关机 |
---|---|---|
服务器 1 | 82 | |
服务器 2 | 88.6 | |
服务器 3 | 59.6 |
使用此转换,通过指定查询结果中的字段来构建矩阵。矩阵输出反映了这些字段中唯一值之间的关系。这有助于您以清晰且结构化的矩阵格式呈现复杂的关系。
分组到嵌套表
使用此转换按指定的字段(列)值对数据进行分组,并对每个组执行计算。生成共享相同分组字段值的记录,以显示在嵌套表中。
要计算字段的统计信息,请单击字段旁边的选择框,然后选择 计算 选项

一旦选择 计算,将在相应字段旁边显示另一个选择框,您可以在其中选择统计信息

有关可用计算的信息,请参阅计算类型。
这是一个原始数据的示例
时间 | 服务器 ID | CPU 温度 | 服务器状态 |
---|---|---|---|
2020-07-07 11:34:20 | 服务器 1 | 80 | 关机 |
2020-07-07 11:34:20 | 服务器 3 | 62 | 正常 |
2020-07-07 10:32:20 | 服务器 2 | 90 | 过载 |
2020-07-07 10:31:22 | 服务器 3 | 55 | 正常 |
2020-07-07 09:30:57 | 服务器 3 | 62 | 正在重启 |
2020-07-07 09:30:05 | 服务器 2 | 88 | 正常 |
2020-07-07 09:28:06 | 服务器 1 | 80 | 正常 |
2020-07-07 09:25:05 | 服务器 2 | 88 | 正常 |
2020-07-07 09:23:07 | 服务器 1 | 86 | 正常 |
此转换分为两个步骤。首先,指定一个或多个字段以按其分组数据。这将把这些字段的所有相同值组合在一起,就像您对它们进行排序一样。例如,如果您按“服务器 ID”字段分组,Grafana 会以这种方式对数据进行分组
服务器 ID | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
服务器 1 |
| |||||||||||||
服务器 2 |
| |||||||||||||
服务器 3 |
|
选择要按其分组数据的字段后,您可以对其他字段添加各种计算,并将计算应用于每组行。例如,您可能想要计算每个服务器的平均 CPU 温度。为此,请添加应用于“CPU 温度”字段的 平均值计算 以获得以下结果
服务器 ID | CPU 温度(平均值) | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
服务器 1 | 82 |
| |||||||||
服务器 2 | 88.6 |
| |||||||||
服务器 3 | 59.6 |
|
创建热图
使用此转换来准备直方图数据,以可视化随时间变化的趋势。与热图可视化类似,此转换将直方图指标转换为时间桶。
X 轴分桶
此设置确定 x 轴如何划分为桶。
- 大小 - 在输入字段中指定时间间隔。例如,‘1h’ 的时间范围在 x 轴上创建一小时宽的单元格。
- 计数 - 对于非时间相关的序列,请使用此选项来定义桶中元素的数量。
Y 轴分桶
此设置确定 y 轴如何划分为桶。
- 线性
- 对数 - 在以 2 为底的对数或以 10 为底的对数之间选择。
- Symlog - 使用对称对数刻度。在以 2 为底的对数或以 10 为底的对数之间选择,允许使用负值。
假设您有以下数据集
时间戳 | 值 |
---|---|
2023-01-01 12:00:00 | 5 |
2023-01-01 12:15:00 | 10 |
2023-01-01 12:30:00 | 15 |
2023-01-01 12:45:00 | 8 |
- 当 X 轴分桶设置为 ‘大小:15 分钟’ 且 Y 轴分桶为 ‘线性’ 时,直方图将值组织到 x 轴上 15 分钟的时间间隔中,并在 y 轴上线性组织。
- 对于 X 轴分桶为 ‘计数:2’ 且 Y 轴分桶为 ‘对数(以 10 为底)’,直方图将值分组到 x 轴上每组两个的桶中,并在 y 轴上使用对数刻度。
直方图
使用此转换根据输入数据生成直方图,使您可以可视化值的分布。
- 桶大小 - 桶中最低项和最高项之间的范围(xMin 到 xMax)。
- 桶偏移 - 非零基桶的偏移量。
- 合并序列 - 使用所有可用序列创建统一的直方图。
原始数据
序列 1
A | B | C |
---|---|---|
1 | 3 | 5 |
2 | 4 | 6 |
3 | 5 | 7 |
4 | 6 | 8 |
5 | 7 | 9 |
序列 2
C |
---|
5 |
6 |
7 |
8 |
9 |
输出
xMin | xMax | A | B | C | C |
---|---|---|---|---|---|
1 | 2 | 1 | 0 | 0 | 0 |
2 | 3 | 1 | 0 | 0 | 0 |
3 | 4 | 1 | 1 | 0 | 0 |
4 | 5 | 1 | 1 | 0 | 0 |
5 | 6 | 1 | 1 | 1 | 1 |
6 | 7 | 0 | 1 | 1 | 1 |
7 | 8 | 0 | 1 | 1 | 1 |
8 | 9 | 0 | 0 | 1 | 1 |
9 | 10 | 0 | 0 | 1 | 1 |
使用生成的直方图可视化值的分布,从而深入了解数据的分布和密度。
按字段联接
使用此转换将多个结果合并到一个表中,从而可以整合来自不同查询的数据。
当将多个时间序列结果转换为具有共享时间字段的单个宽表时,这尤其有用。
内联接(用于时间序列或类似 SQL 的数据)
内联接合并来自多个表的数据,其中所有表都共享来自所选字段的相同值。此类型的联接排除值在每个结果中不匹配的数据。
使用此转换将来自多个查询的结果(在传递的联接字段或第一个时间列上组合)组合到一个结果中,并删除无法成功联接的行。这对于大型时间序列数据集未进行优化。
在以下示例中,两个查询返回时间序列数据。在应用内联接转换之前,它被可视化为两个单独的表。
查询 A
时间 | 作业 | 正常运行时间 |
---|---|---|
2020-07-07 11:34:20 | 节点 | 25260122 |
2020-07-07 11:24:20 | PostgreSQL | 123001233 |
2020-07-07 11:14:20 | PostgreSQL | 345001233 |
查询 B
时间 | 服务器 | 错误 |
---|---|---|
2020-07-07 11:34:20 | 服务器 1 | 15 |
2020-07-07 11:24:20 | 服务器 2 | 5 |
2020-07-07 11:04:20 | 服务器 3 | 10 |
应用内联接转换后的结果如下所示
时间 | 作业 | 正常运行时间 | 服务器 | 错误 |
---|---|---|---|---|
2020-07-07 11:34:20 | 节点 | 25260122 | 服务器 1 | 15 |
2020-07-07 11:24:20 | PostgreSQL | 123001233 | 服务器 2 | 5 |
这对于非时间序列表格数据也以相同的方式工作。
学生
学生 ID | 名称 | 专业 |
---|---|---|
1 | John | 计算机科学 |
2 | Emily | 数学 |
3 | Michael | 物理 |
4 | Jennifer | 化学 |
注册
学生 ID | 课程 ID | 成绩 |
---|---|---|
1 | CS101 | A |
1 | CS102 | B |
2 | MATH201 | A |
3 | PHYS101 | B |
5 | HIST101 | B |
应用内联接转换后的结果如下所示
学生 ID | 名称 | 专业 | 课程 ID | 成绩 |
---|---|---|---|---|
1 | John | 计算机科学 | CS101 | A |
1 | John | 计算机科学 | CS102 | B |
2 | Emily | 数学 | MATH201 | A |
3 | Michael | 物理 | PHYS101 | B |
内联接仅包含两个表中的 “学生 ID” 之间存在匹配的行。在本例中,结果不包括 “学生” 表中的 “Jennifer”,因为 “注册” 表中没有她的匹配注册信息。
外联接(用于时间序列数据)
外联接包含内联接中的所有数据,以及值在每个输入中不匹配的行。虽然内联接在时间字段上联接查询 A 和查询 B,但外联接包含所有在时间字段上不匹配的行。
在以下示例中,两个查询返回表格数据。在应用外联接转换之前,它被可视化为两个表。
查询 A
时间 | 作业 | 正常运行时间 |
---|---|---|
2020-07-07 11:34:20 | 节点 | 25260122 |
2020-07-07 11:24:20 | PostgreSQL | 123001233 |
2020-07-07 11:14:20 | PostgreSQL | 345001233 |
查询 B
时间 | 服务器 | 错误 |
---|---|---|
2020-07-07 11:34:20 | 服务器 1 | 15 |
2020-07-07 11:24:20 | 服务器 2 | 5 |
2020-07-07 11:04:20 | 服务器 3 | 10 |
应用外联接转换后的结果如下所示
时间 | 作业 | 正常运行时间 | 服务器 | 错误 |
---|---|---|---|---|
2020-07-07 11:04:20 | 服务器 3 | 10 | ||
2020-07-07 11:14:20 | PostgreSQL | 345001233 | ||
2020-07-07 11:34:20 | 节点 | 25260122 | 服务器 1 | 15 |
2020-07-07 11:24:20 | PostgreSQL | 123001233 | 服务器 2 | 5 |
在以下示例中,模板查询在表格可视化中显示来自多个服务器的时间序列数据。一次只能查看一个查询的结果。

我应用了一个转换,以使用时间字段联接查询结果。现在我可以运行计算、组合和组织此新表中的结果。

外联接(用于类似 SQL 的数据)
表格外联接组合表,以便结果包括来自一个或两个表的匹配和不匹配的行。
学生 ID | 名称 | 专业 |
---|---|---|
1 | John | 计算机科学 |
2 | Emily | 数学 |
3 | Michael | 物理 |
4 | Jennifer | 化学 |
现在可以与以下项联接
学生 ID | 课程 ID | 成绩 |
---|---|---|
1 | CS101 | A |
1 | CS102 | B |
2 | MATH201 | A |
3 | PHYS101 | B |
5 | HIST101 | B |
应用外联接转换后的结果如下所示
学生 ID | 名称 | 专业 | 课程 ID | 成绩 |
---|---|---|---|---|
1 | John | 计算机科学 | CS101 | A |
1 | John | 计算机科学 | CS102 | B |
2 | Emily | 数学 | MATH201 | A |
3 | Michael | 物理 | PHYS101 | B |
4 | Jennifer | 化学 | NULL | NULL |
5 | NULL | NULL | HIST101 | B |
使用表格联接组合和分析来自各种查询的数据,以获得信息的全面视图。
按标签联接
使用此转换将多个结果联接到单个表中。
当将多个时间序列结果转换为具有共享 标签 字段的单个宽表时,这尤其有用。
- 联接 - 在所有时间序列中可用或常见的标签之间选择要联接的标签。
- 值 - 输出结果的名称。
示例
输入
series1{what=“Temp”, cluster=“A”, job=“J1”}
时间 | 值 |
---|---|
1 | 10 |
2 | 200 |
series2{what=“Temp”, cluster=“B”, job=“J1”}
时间 | 值 |
---|---|
1 | 10 |
2 | 200 |
series3{what=“Speed”, cluster=“B”, job=“J1”}
时间 | 值 |
---|---|
22 | 22 |
28 | 77 |
配置
值:“what”
输出
集群 | 作业 | 温度 | 速度 |
---|---|---|---|
A | J1 | 10 | |
A | J1 | 200 | |
B | J1 | 10 | 22 |
B | J1 | 200 | 77 |
使用此转换有效地组合和组织时间序列数据,以获得全面的见解。
标签到字段
使用此转换将带有标签或标记的时间序列结果转换为表格,包括结果中每个标签的键和值。将标签显示为列或行值,以增强数据可视化。
给定两个时间序列的查询结果
- 序列 1:标签 Server=Server A,Datacenter=EU
- 序列 2:标签 Server=Server B,Datacenter=EU
在 “列” 模式下,结果如下所示
时间 | 服务器 | 数据中心 | 值 |
---|---|---|---|
2020-07-07 11:34:20 | Server A | 欧盟 | 1 |
2020-07-07 11:34:20 | Server B | 欧盟 | 2 |
在 “行” 模式下,结果为每个序列都有一个表格,并显示每个标签值,如下所示
标签 | 值 |
---|---|
服务器 | Server A |
数据中心 | 欧盟 |
标签 | 值 |
---|---|
服务器 | Server B |
数据中心 | 欧盟 |
值字段名称
如果您选择 “服务器” 作为 值字段名称,那么您将为 “服务器” 标签的每个值获得一个字段。
时间 | 数据中心 | Server A | Server B |
---|---|---|---|
2020-07-07 11:34:20 | 欧盟 | 1 | 2 |
合并行为
标签到字段转换器在内部是两个独立的转换。第一个作用于单个序列,并将标签提取到字段。第二个是 合并 转换,它将所有结果联接到单个表中。合并转换尝试联接所有匹配的字段。此合并步骤是必需的,无法关闭。
为了说明这一点,这是一个示例,其中您有两个查询,它们返回没有重叠标签的时间序列。
- 序列 1:标签 Server=ServerA
- 序列 2:标签 Datacenter=EU
这将首先导致这两个表
时间 | 服务器 | 值 |
---|---|---|
2020-07-07 11:34:20 | ServerA | 10 |
时间 | 数据中心 | 值 |
---|---|---|
2020-07-07 11:34:20 | 欧盟 | 20 |
合并后
时间 | 服务器 | 值 | 数据中心 |
---|---|---|---|
2020-07-07 11:34:20 | ServerA | 10 | |
2020-07-07 11:34:20 | 20 | 欧盟 |
将您的时间序列数据转换为结构化表格格式,以获得更清晰、更有组织的表示形式。
限制
使用此转换来限制显示的行数,从而提供更集中的数据视图。这在处理大型数据集时尤其有用。
下面是一个示例,说明了 限制 转换对来自数据源的响应的影响
时间 | 指标 | 值 |
---|---|---|
2020-07-07 11:34:20 | 温度 | 25 |
2020-07-07 11:34:20 | 湿度 | 22 |
2020-07-07 10:32:20 | 湿度 | 29 |
2020-07-07 10:31:22 | 温度 | 22 |
2020-07-07 09:30:57 | 湿度 | 33 |
2020-07-07 09:30:05 | 温度 | 19 |
这是在添加值为 ‘3’ 的限制转换后的结果
时间 | 指标 | 值 |
---|---|---|
2020-07-07 11:34:20 | 温度 | 25 |
2020-07-07 11:34:20 | 湿度 | 22 |
2020-07-07 10:32:20 | 湿度 | 29 |
使用负数,您可以保留集合末尾的值。这是在添加值为 ‘-3’ 的限制转换后的结果
时间 | 指标 | 值 |
---|---|---|
2020-07-07 10:31:22 | 温度 | 22 |
2020-07-07 09:30:57 | 湿度 | 33 |
2020-07-07 09:30:05 | 温度 | 19 |
此转换可帮助您调整数据的可视化呈现,以专注于最相关的信息。
合并序列/表格
使用此转换将来自多个查询的结果合并为单个结果,这在使用表格面板可视化时尤其有用。如果共享字段包含相同的数据,则此转换会将值合并到同一行中。
这是一个示例,说明了 合并序列/表格 转换对返回表格数据的两个查询的影响
查询 A
时间 | 作业 | 正常运行时间 |
---|---|---|
2020-07-07 11:34:20 | 节点 | 25260122 |
2020-07-07 11:24:20 | PostgreSQL | 123001233 |
查询 B
时间 | 作业 | 错误 |
---|---|---|
2020-07-07 11:34:20 | 节点 | 15 |
2020-07-07 11:24:20 | PostgreSQL | 5 |
这是应用合并转换后的结果。
时间 | 作业 | 错误 | 正常运行时间 |
---|---|---|---|
2020-07-07 11:34:20 | 节点 | 15 | 25260122 |
2020-07-07 11:24:20 | PostgreSQL | 5 | 123001233 |
此转换将来自查询 A 和查询 B 的值合并到统一的表格中,从而增强了数据的呈现效果,以获得更好的见解。
按名称组织字段
使用此转换来灵活地重命名、重新排序或隐藏面板中单个查询返回的字段。此转换仅适用于具有单个查询的面板。如果您的面板有多个查询,请考虑使用 “外联接” 转换或删除额外的查询。
转换字段
Grafana 显示查询返回的字段列表,允许您执行以下操作
- 更改字段顺序 - 将鼠标悬停在字段上,当您的光标变成手形时,将字段拖动到其新位置。
- 隐藏或显示字段 - 使用字段名称旁边的眼睛图标来切换特定字段的可见性。
- 重命名字段 - 在 “重命名
” 框中键入新名称以自定义字段名称。
示例
原始查询结果
时间 | 指标 | 值 |
---|---|---|
2020-07-07 11:34:20 | 温度 | 25 |
2020-07-07 11:34:20 | 湿度 | 22 |
2020-07-07 10:32:20 | 湿度 | 29 |
应用字段覆盖后
时间 | 传感器 | 读数 |
---|---|---|
2020-07-07 11:34:20 | 温度 | 25 |
2020-07-07 11:34:20 | 湿度 | 22 |
2020-07-07 10:32:20 | 湿度 | 29 |
此转换使您可以调整查询结果的显示方式,确保在 Grafana 中清晰且深入地表示您的数据。
按值分区
使用此转换来简化绘制多个序列图表的过程,而无需使用具有不同 ‘WHERE’ 子句的多个查询。
当处理指标 SQL 表时,这尤其有用,如下所示
时间 | 区域 | 值 |
---|---|---|
2022-10-20 12:00:00 | 美国 | 1520 |
2022-10-20 12:00:00 | 欧盟 | 2936 |
2022-10-20 01:00:00 | 美国 | 1327 |
2022-10-20 01:00:00 | 欧盟 | 912 |
使用 按值分区 转换,您可以发出单个查询,并按您选择的一个或多个列(字段)中的唯一值拆分结果。以下示例使用 ‘区域’
‘SELECT Time, Region, Value FROM metrics WHERE Time > “2022-10-20”’
时间 | 区域 | 值 |
---|---|---|
2022-10-20 12:00:00 | 美国 | 1520 |
2022-10-20 01:00:00 | 美国 | 1327 |
时间 | 区域 | 值 |
---|---|---|
2022-10-20 12:00:00 | 欧盟 | 2936 |
2022-10-20 01:00:00 | 欧盟 | 912 |
此转换简化了流程,并增强了在同一时间序列可视化中可视化多个序列的灵活性。
准备时间序列
当数据源以与所需可视化不兼容的格式返回时间序列数据时,使用此转换来解决问题。此转换允许您在宽格式和长格式之间转换时间序列数据,从而提供数据帧结构的灵活性。
可用选项
多帧时间序列
使用此选项将时间序列数据帧从宽格式转换为长格式。当您的数据源以需要重塑格式的时间序列信息传递时,这尤其有用,以便与您的可视化实现最佳兼容性。
示例:从宽格式转换为长格式
时间戳 | 值 1 | 值 2 |
---|---|---|
2023-01-01 00:00:00 | 10 | 20 |
2023-01-01 01:00:00 | 15 | 25 |
转换为
时间戳 | 变量 | 值 |
---|---|---|
2023-01-01 00:00:00 | 值 1 | 10 |
2023-01-01 00:00:00 | 值 2 | 20 |
2023-01-01 01:00:00 | 值 1 | 15 |
2023-01-01 01:00:00 | 值 2 | 25 |
宽时间序列
选择此选项将时间序列数据帧从长格式转换为宽格式。如果您的数据源以长格式返回时间序列数据,并且您的可视化需要宽格式,则此转换简化了流程。
示例:从长格式转换为宽格式
时间戳 | 变量 | 值 |
---|---|---|
2023-01-01 00:00:00 | 值 1 | 10 |
2023-01-01 00:00:00 | 值 2 | 20 |
2023-01-01 01:00:00 | 值 1 | 15 |
2023-01-01 01:00:00 | 值 2 | 25 |
转换为
时间戳 | 值 1 | 值 2 |
---|---|---|
2023-01-01 00:00:00 | 10 | 20 |
2023-01-01 01:00:00 | 15 | 25 |
减少
使用此转换对数据帧中的每个字段应用计算并返回单个值。此转换对于将多个时间序列数据整合为更紧凑的摘要格式尤其有用。应用此转换时,将删除时间字段。
考虑输入
查询 A
时间 | 温度 | 正常运行时间 |
---|---|---|
2020-07-07 11:34:20 | 12.3 | 256122 |
2020-07-07 11:24:20 | 15.4 | 1230233 |
查询 B
时间 | AQI | 错误 |
---|---|---|
2020-07-07 11:34:20 | 6.5 | 15 |
2020-07-07 11:24:20 | 3.2 | 5 |
减少转换器有两种模式
- 序列到行 - 为每个字段创建一行,为每个计算创建一个列。
- 减少字段 - 保留现有的帧结构,但将每个字段折叠为单个值。
例如,如果您将 第一个 和 最后一个 计算与 序列到行 转换一起使用,则结果将是
字段 | 第一个 | 最后一个 |
---|---|---|
温度 | 12.3 | 15.4 |
正常运行时间 | 256122 | 1230233 |
AQI | 6.5 | 3.2 |
错误 | 15 | 5 |
带有 最后一个 计算的 减少字段 会产生两个帧,每个帧都有一行
查询 A
温度 | 正常运行时间 |
---|---|
15.4 | 1230233 |
查询 B
AQI | 错误 |
---|---|
3.2 | 5 |
这种灵活的转换简化了将多个时间序列的数据整合和汇总为更易于管理和组织的格式的过程。
按正则表达式重命名
使用此转换,使用正则表达式和替换模式重命名查询结果的部分内容。
您可以指定正则表达式,它仅应用于匹配项,以及支持反向引用的替换模式。例如,假设您正在可视化每个主机的 CPU 使用率,并且想要删除域名。您可以将正则表达式设置为 ‘/^([^.]+).*/’,并将替换模式设置为 ‘$1’,‘web-01.example.com’ 将变为 ‘web-01’。
注意: Grafana v9.0.0 中改进了按正则表达式重命名转换,以允许 ‘/
/g’ 形式的全局模式。根据使用的正则表达式匹配,这可能会导致某些转换的行为略有不同。您可以通过将匹配字符串包装在正斜杠 ‘(/)’ 中来保证与以前相同的行为,例如 ‘(.)’ 将变为 ‘/(.)/’。
在以下示例中,我们从字段名称中剥离 ‘A-’ 前缀。在之前的图像中,您可以看到所有内容都以 ‘A-’ 为前缀

应用转换后,您可以看到我们只剩下字符串的其余部分。

此转换使您可以调整数据以满足您的可视化需求,使您的仪表板更具信息性和用户友好性。
行到字段
使用此转换将行转换为单独的字段。这可能很有用,因为字段可以单独设置样式和配置。它还可以使用额外的字段作为动态字段配置的来源,或将其映射到字段标签。然后,可以使用额外的标签为结果字段定义更好的显示名称。
此转换包括一个字段表,其中列出了配置查询返回的数据中的所有字段。此表使您可以控制应将哪个字段映射到每个配置属性(用作 选项)。您还可以选择在返回的数据中有多行时选择哪个值。
此转换需要
一个字段用作字段名称的来源。
默认情况下,转换使用第一个字符串字段作为来源。您可以通过在要使用的字段的 用作 列中选择 字段名称 来覆盖此默认设置。
一个字段用作值的来源。
默认情况下,转换使用第一个数字字段作为来源。但是您可以通过在要使用的字段的 用作 列中选择 字段值 来覆盖此默认设置。
在以下情况下很有用:
- 计量表
- 统计
- 饼图
将额外字段映射到标签
如果字段未映射到配置属性,Grafana 将自动将其用作输出字段上标签的来源 -
示例
名称 | 数据中心 | 值 |
---|---|---|
ServerA | 美国 | 100 |
ServerB | 欧盟 | 200 |
输出
ServerA(标签:数据中心:美国) | ServerB(标签:数据中心:欧盟) |
---|---|
10 | 20 |
现在可以在字段显示名称中使用额外的标签,以提供更完整的字段名称。
如果您想从一个查询中提取配置并将其应用于另一个查询,则应使用来自查询结果的配置转换。
示例
输入
名称 | 值 | 最大值 |
---|---|---|
ServerA | 10 | 100 |
ServerB | 20 | 200 |
ServerC | 30 | 300 |
输出
ServerA(配置:最大值=100) | ServerB(配置:最大值=200) | ServerC(配置:最大值=300) |
---|---|---|
10 | 20 | 30 |
如您所见,源数据中的每一行都变成一个单独的字段。现在,每个字段还设置了最大值配置选项。最小值、最大值、单位 和 阈值 等选项都是字段配置的一部分,如果像这样设置,则可视化将使用它们,而不是面板编辑器选项窗格中手动配置的任何选项。
此转换支持将行转换为单独的字段,有助于动态字段配置,并将额外的字段映射到标签。
序列到行
使用此转换将来自多个时间序列数据查询的结果合并为一个结果。这在使用表格面板可视化时很有帮助。
此转换的结果将包含三列:时间、指标和值。“指标”列已添加,以便您可以轻松查看指标的来源查询。通过在源查询上定义标签来自定义此值。
在下面的示例中,我们有两个查询返回时间序列数据。在应用转换之前,它被可视化为两个单独的表。
查询 A
时间 | 温度 |
---|---|
2020-07-07 11:34:20 | 25 |
2020-07-07 10:31:22 | 22 |
2020-07-07 09:30:05 | 19 |
查询 B
时间 | 湿度 |
---|---|
2020-07-07 11:34:20 | 24 |
2020-07-07 10:32:20 | 29 |
2020-07-07 09:30:57 | 33 |
这是在应用序列到行转换后的结果。
时间 | 指标 | 值 |
---|---|---|
2020-07-07 11:34:20 | 温度 | 25 |
2020-07-07 11:34:20 | 湿度 | 22 |
2020-07-07 10:32:20 | 湿度 | 29 |
2020-07-07 10:31:22 | 温度 | 22 |
2020-07-07 09:30:57 | 湿度 | 33 |
2020-07-07 09:30:05 | 温度 | 19 |
此转换有助于整合来自多个时间序列查询的结果,从而提供简化的统一数据集,以便在表格格式中进行高效的分析和可视化。
排序依据
使用此转换根据指定的字段对查询结果中的每个帧进行排序,使您的数据更易于理解和分析。通过配置所需的排序字段,您可以控制数据在表格或可视化中的呈现顺序。
使用 反向 开关反向排序指定字段中的值。当您想要在升序和降序之间快速切换以满足您的分析需求时,此功能特别有用。
例如,在从数据源检索时间序列数据的场景中,可以应用排序依据转换来根据时间戳按升序或降序排列数据帧,具体取决于分析需求。此功能确保您可以轻松导航和解释时间序列数据,从有组织且视觉连贯的呈现中获得宝贵的见解。
空间
使用此转换将空间运算应用于查询结果。
- 操作 - 选择一个操作
- 准备空间字段 - 基于其他字段的结果设置几何字段。
- 位置模式 - 选择位置模式(计算值和 转换 模式共享这些选项)
- 自动 - 基于默认字段名称自动识别位置数据。
- 坐标 - 指定纬度和经度字段。
- 地理哈希 - 指定地理哈希字段。
- 查找 - 指定地名词典位置字段。
- 位置模式 - 选择位置模式(计算值和 转换 模式共享这些选项)
- 计算值 - 使用几何图形定义新字段(方向/距离/面积)。
- 函数 - 选择要应用于几何图形的数学运算
- 方向 - 计算两点之间的方向。
- 面积 - 计算由几何图形定义的多边形所包围的面积。
- 距离 - 计算两点之间的距离。
- 函数 - 选择要应用于几何图形的数学运算
- 转换 - 将空间运算应用于几何图形。
- 操作 - 选择要应用于几何图形的操作
- 作为线 - 创建一个单线要素,每行都有一个顶点。
- 线构建器 - 在两点之间创建一条线。
- 操作 - 选择要应用于几何图形的操作
- 准备空间字段 - 基于其他字段的结果设置几何字段。
此转换允许您操纵和分析地理空间数据,从而实现诸如在点之间创建线、计算空间属性等操作。
时间序列到表格转换
使用此转换将时间序列结果转换为表格,将时间序列数据帧转换为 趋势 字段,然后可以将其与 迷你图单元格类型 一起使用。如果有多个时间序列查询,则每个查询将生成一个单独的表格数据帧。这些可以使用连接或合并转换进行连接,以生成每行具有多个迷你图的单个表格。

对于每个生成的 趋势 字段值,可以选择一个计算函数。此值显示在迷你图旁边,并将用于对表格行进行排序。

注意: 此转换在 Grafana 9.5+ 版本中作为可选 Beta 功能提供。修改 Grafana 配置文件 以使用它。
转置
使用此转换来透视数据帧,将行转换为列,将列转换为行。当您想要切换数据的方向以更好地适应您的可视化需求时,此转换特别有用。如果您有多种类型,它将默认为字符串类型。
转换前
环境 | 一月 | 二月 |
---|---|---|
生产 | 1 | 2 |
开发 | 3 | 4 |
应用转置转换后
字段 | 生产 | 开发 |
---|---|---|
一月 | 1 | 3 |
二月 | 2 | 4 |

回归分析
使用此转换创建包含由统计模型预测的值的新数据帧。这对于查找混乱数据中的趋势很有用。它通过使用线性或多项式回归将数学函数拟合到数据来工作。然后可以将数据帧用于可视化以显示趋势线。
有两种不同的模型
注意: 此转换目前处于公开预览阶段。Grafana Labs 提供有限的支持,并且在功能正式发布之前可能会发生重大更改。启用 Grafana 中的
regressionTransformation
功能标志以使用此功能。联系 Grafana 支持以在 Grafana Cloud 中启用此功能。