You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用InfluxDB的Flux分析日均能耗分布并可视化?

日均能耗时段分析与可视化方案

改造后的Flux查询

要实现按每天5分钟时段(共288个时段)计算均值、中位数等统计值,需在原有查询基础上添加时段分组与聚合逻辑,具体查询如下:

from(bucket: "Energie")
  |> range(start: -7d)
  |> filter(fn: (r) => r["_measurement"] == "mqtt_consumer")
  |> filter(fn: (r) => r["topic"] == "energie/haushalt_hm/IEC_POWER")
  // 按5分钟窗口聚合原始数据,得到每个区间的平均能耗
  |> aggregateWindow(every: 5m, fn: mean, createEmpty: false)
  // 生成时段标识:易读的HH:mm格式 + 数值型分钟数(用于排序)
  |> map(fn: (r) => ({
      r with
      interval: time.format(t: time.truncate(t: r._time, every: 5m), format: "%H:%M"),
      interval_min: uint(v: hour(t: r._time)) * 60 + uint(v: minute(t: r._time))
    })
  )
  // 按时段分组,计算该时段的均值、中位数
  |> group(columns: ["interval", "interval_min"])
  |> aggregateWindow(every: inf, fn: mean, column: "_value", alias: "mean_power")
  |> aggregateWindow(every: inf, fn: median, column: "_value", alias: "median_power")
  // 按时段顺序排序,保证图表展示逻辑正确
  |> sort(columns: ["interval_min"])
  |> keep(columns: ["interval", "interval_min", "mean_power", "median_power"])

查询逻辑说明

  1. 基础数据处理:保留原有过滤与5分钟窗口聚合,确保每个数据点是对应时段的平均能耗;
  2. 时段标识生成:通过map生成两类时段标签,interval用于可视化时的易读展示,interval_min用于避免字符串排序的逻辑错误;
  3. 分组聚合:按时段分组后,用every: inf对全周期同时段数据做聚合,得到该时段的均值、中位数;
  4. 排序与字段筛选:按数值型时段排序,仅保留可视化所需字段。

可视化配置(以InfluxDB UI为例)

  1. 图表类型选择:优先选择折线图(展示趋势)或柱状图(对比时段差异);
  2. 轴配置:
    • X轴:选择interval作为展示字段,设置排序依据为interval_min,确保时段从00:00到23:55依次排列;
    • Y轴:添加mean_power和median_power两个字段,可通过不同颜色区分,直观对比均值与中位数的差异;
  3. 扩展极值展示:若需查看每个时段的能耗波动范围,可在查询中添加极值聚合:
    |> aggregateWindow(every: inf, fn: max, column: "_value", alias: "max_power")
    |> aggregateWindow(every: inf, fn: min, column: "_value", alias: "min_power")
    
    可视化时可添加极值线条,或用区域图展示min_power到max_power的波动区间。

注意事项

  • 数据完整性:若存在时段数据缺失,可将aggregateWindow中的createEmpty: false改为true,确保每个时段都有数据点(缺失值会填充null,聚合时自动忽略);
  • 样本周期:可调整range(start: -7d)为更长周期(如-30d),获取更具代表性的统计结果;
  • 日期类型区分:若需对比工作日与周末的能耗差异,可在map步骤添加weekday字段,分组时纳入该字段即可实现分类分析。

内容的提问来源于stack exchange,提问作者Twonky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 13:45:14