文档文档

开始数据可视化

您可以使用许多工具来可视化您的时间序列数据,包括 InfluxDB 用户界面 (UI)、ChronografGrafana。本教程将引导您使用 InfluxDB UI 创建一个简单的仪表盘。

仪表盘是显示时间序列数据的强大方式,可以帮助识别趋势和异常。一个仪表盘由一个或多个仪表盘单元格组成。仪表盘单元格使用可用的可视化类型可视化查询结果。

创建仪表盘

  1. 在 InfluxDB 运行的情况下,在浏览器中访问 localhost:8086 以访问 InfluxDB UI。

  2. 登录并在左侧导航栏中选择 仪表盘

  3. 单击 + 创建仪表盘 并选择 新仪表盘

  4. 单击命名此仪表盘并为仪表盘提供一个名称。在本教程中,我们将使用 “入门仪表盘”

创建仪表盘单元格

创建并命名新仪表盘后,添加一个新的仪表盘单元格

  1. 单击 添加单元格

  2. 单击命名此单元格并为单元格提供一个名称。在本教程中,我们将使用 “房间温度”

  3. (可选) 从可视化下拉菜单中选择可视化类型。有许多不同的可视化类型可用。在本教程中,使用默认的 图表 可视化。

  4. 使用查询时间范围选择器选择一个绝对时间范围,该范围涵盖 “开始写入 InfluxDB”中写入的数据的时间范围:2022-01-01T08:00:00Z2022-01-01T20:00:01Z

    1. 查询时间范围选择器默认查询过去一小时的数据 ( 过去 1 小时)。单击时间范围选择器下拉菜单并选择 自定义时间范围

      查看时间范围选择器

    2. 使用日期选择器选择停止和停止日期和时间,或手动输入以下开始和停止时间

      • 开始: 2022-01-01 08:00:00
      • 停止: 2022-01-01 20:00:01
    3. 单击 应用时间范围

  5. 使用 查询构建器 选择要查询的 measurement、字段和标签

    1. 来自 列中,选择 get-started 存储桶。
    2. 过滤器 列中,选择 home measurement。
    3. 在下一个 过滤器 列中,选择 temp 字段。
    4. 在下一个 过滤器 列中,选择 room 标签和 Kitchen 标签值。
  6. 单击 提交 以运行查询并可视化结果。

    InfluxDB Query Builder
  7. 单击 以保存单元格并返回到仪表盘。

创建和使用仪表盘变量

InfluxDB 仪表盘单元格使用 仪表盘变量 来动态更改单元格查询的特定部分。查询构建器使用以下预定义的仪表盘变量自动构建查询,每个变量都由仪表盘中的选择控制

  • v.timeRangeStart:由时间范围选择器指定查询时间范围的开始时间。
  • v.timeRangeStop:由时间范围选择器指定查询时间范围的停止时间。
  • v.windowPeriod:用于将数据降采样到单元格可视化中每个像素一个点的窗口周期。此变量的值由单元格的像素宽度决定。

创建自定义仪表盘变量

让我们创建一个自定义仪表盘变量,我们可以使用它来更改仪表盘单元格显示的字段。

  1. 在左侧导航栏中选择 设置 > 变量

  2. 单击 + 创建变量 并选择 新变量

  3. 命名你的变量。在本教程中,将变量命名为 “room”

  4. 选择默认的 查询 仪表盘变量类型。此变量类型使用查询结果填充可能的变量值列表。有关其他仪表盘变量类型的信息,请参阅 变量类型

  5. 输入以下 Flux 查询以从 Unix 纪元返回 get-started 存储桶中所有不同的 room 标签值。

    import "influxdata/influxdb/schema"
    
    schema.tagValues(bucket: "get-started", tag: "room", start: time(v: 0))
    
  6. 单击 创建变量

使用自定义仪表盘变量

  1. 通过单击左侧导航栏中的 仪表盘 ,然后单击仪表盘的名称,导航到你的 入门仪表盘

  2. 单击 房间温度 单元格上的 ,然后选择 配置

  3. 单击 脚本编辑器 以直接编辑 Flux 查询。

  4. 在 Flux 查询的第 5 行,将 "Kitchen" 替换为 v.room 以使用 room 仪表盘变量的选定值。

    from(bucket: "get-started")
      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
      |> filter(fn: (r) => r["_measurement"] == "home")
      |> filter(fn: (r) => r["_field"] == "temp")
      |> filter(fn: (r) => r["room"] == v.room)
      |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
      |> yield(name: "mean")
    
  5. 单击 以保存单元格并返回到仪表盘。

  6. 刷新浏览器以重新加载仪表盘。

  7. 使用 room 变量 下拉菜单选择要显示记录温度的房间。

    InfluxDB dashboard variable selection

有关创建自定义仪表盘变量的更多信息,请参阅 使用和管理仪表盘变量


恭喜你!

您已经完成了使用 InfluxDB 2.7 设置、写入、查询、处理和可视化 数据的基本步骤。请随意深入研究这些主题中的每一个


此页面对您有帮助吗?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在这样使用它,而无需对代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速的最新数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 以 Core 的基础为构建,增加了高可用性、读取副本、增强的安全性以及数据压缩,从而实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层级可供非商业家庭或业余爱好者使用。

有关更多信息,请查看