前提:[post cid="8378" cover="" size="small"/] ## HomeAssistant配置 增加MQTT传感器修改:`configuration.yaml` 文件 参考链接:[https://github.com/x2rr/state-grid/blob/main/README.md](https://github.com/x2rr/state-grid/blob/main/README.md)  ``` mqtt: sensor: - name: "电费余额" icon: 'mdi:lightning-bolt' unique_id: 'yong_dian_xin_xi' state_topic: "nodejs/state-grid" value_template: "{{ value_json.sumMoney }}" unit_of_measurement: '元' json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json | tojson }}" - name: 'Electricity Usage Day 1' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[0].dayElePq }}' unique_id: "electricity_usage_day1" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[0] | tojson }}" - name: 'Electricity Usage Day 2' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[1].dayElePq }}' unique_id: "electricity_usage_day2" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[1] | tojson }}" - name: 'Electricity Usage Day 3' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[2].dayElePq }}' unique_id: "electricity_usage_day3" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[2] | tojson }}" - name: 'Electricity Usage Day 4' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[3].dayElePq }}' unique_id: "electricity_usage_day4" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[3] | tojson }}" - name: 'Electricity Usage Day 5' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[4].dayElePq }}' unique_id: "electricity_usage_day5" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[4] | tojson }}" - name: 'Electricity Usage Day 6' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[5].dayElePq }}' unique_id: "electricity_usage_day6" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[5] | tojson }}" - name: 'Electricity Usage Day 7' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[6].dayElePq }}' unique_id: "electricity_usage_day7" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[6] | tojson }}" ```  **YAML 配置重新加载报错问题解决:** 参考链接:[https://github.com/x2rr/state-grid/issues/14](https://github.com/x2rr/state-grid/issues/14)  猜测可能是: * 使用了 device\_class: energy(能源类别) * 但是计量单位使用了中文的 度 * Home Assistant的能源设备类别只接受特定的英文单位 所以将度改为kWh可能解决,以下为完整configuration.yaml配置: ``` mqtt: sensor: - name: "电费余额" icon: 'mdi:lightning-bolt' unique_id: 'yong_dian_xin_xi' state_topic: "nodejs/state-grid" value_template: "{{ value_json.sumMoney }}" unit_of_measurement: '元' json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json | tojson }}" - name: 'Electricity Usage Day 1' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[0].dayElePq }}' unique_id: "electricity_usage_day1" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[0] | tojson }}" - name: 'Electricity Usage Day 2' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[1].dayElePq }}' unique_id: "electricity_usage_day2" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[1] | tojson }}" - name: 'Electricity Usage Day 3' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[2].dayElePq }}' unique_id: "electricity_usage_day3" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[2] | tojson }}" - name: 'Electricity Usage Day 4' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[3].dayElePq }}' unique_id: "electricity_usage_day4" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[3] | tojson }}" - name: 'Electricity Usage Day 5' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[4].dayElePq }}' unique_id: "electricity_usage_day5" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[4] | tojson }}" - name: 'Electricity Usage Day 6' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[5].dayElePq }}' unique_id: "electricity_usage_day6" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[5] | tojson }}" - name: 'Electricity Usage Day 7' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[6].dayElePq }}' unique_id: "electricity_usage_day7" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[6] | tojson }}" ``` ### 添加卡片模板 vertical-stack flex-table-card apexcharts-card   ### 添加卡片模板    ``` type: vertical-stack cards: - type: grid columns: 2 cards: - type: entity entity: sensor.dian_fei_yu_e name: 电费余额 attribute: sumMoney unit: 元 icon: mdi:currency-usd - type: entity entity: sensor.electricity_usage_day_1 name: 昨日用电 icon: mdi:lightning-bolt - type: entity entity: sensor.dian_fei_yu_e name: 年度总电费 attribute: totalEleCost unit: 元 icon: mdi:currency-usd - type: entity entity: sensor.dian_fei_yu_e name: 年度总电量 attribute: totalEleNum unit: 度 icon: mdi:lightning-bolt square: false - type: entity entity: sensor.electricity_usage_day_1 name: 昨日日期 attribute: day icon: mdi:calendar-today - type: entity entity: sensor.dian_fei_yu_e name: 更新日期 attribute: amtTime icon: mdi:clock-time-three title: 用电统计 ``` ### 过去7天用电 ``` type: custom:flex-table-card title: 过去7天用电情况 entities: include: sensor.electricity_usage_day* columns: - name: 日期 data: day - name: 用电量 data: state suffix: 度 - name: 电费 data: state modify: parseFloat(x*0.5).toFixed(2) suffix: 元 ```  ### 过去一个月用电 ``` type: custom:apexcharts-card graph_span: 12month header: show: true title: 最近12个月电量统计数据 show_states: true colorize_states: true series: - entity: sensor.dian_fei_yu_e name: 用电量 unit: 度 type: column data_generator: | return entity.attributes.monthList.map((peak, index) => { return [entity.attributes.monthList[index].endDate, entity.attributes.monthList[index].monthEleNum]; }); ```  ### 最近7天的折线图  ``` type: custom:apexcharts-card header: show: true title: 最近7天用电量折线图 graph_span: 8d span: end: day series: - entity: sensor.dian_fei_yu_e name: 用电量 (度) unit: 度 type: line float_precision: 2 show: datalabels: true legend_value: true data_generator: | const dayList = entity.attributes.dayList || []; if (!Array.isArray(dayList) || dayList.length === 0) { return []; } // 计算昨天日期字符串,格式 yyyy-mm-dd const yesterday = new Date(); yesterday.setDate(yesterday.getDate() - 1); const yStr = yesterday.toISOString().slice(0,10); // 过滤出日期 <= 昨天,倒序取7条,最后正序返回 const filtered = dayList.filter(d => d.day <= yStr); const last7 = filtered.slice(0,7).reverse(); return last7.map(item => [item.day, parseFloat(item.dayElePq) || 0]); apex_config: xaxis: type: datetime labels: rotate: -45 style: fontSize: 12px stroke: curve: smooth width: 3 markers: size: 6 colors: - "#FFA500" strokeWidth: 2 tooltip: shared: true followCursor: true dataLabels: enabled: true offsetY: -10 style: colors: - "#000" yaxis: - min: 0 ``` 最近15天的折线图 ``` mqtt: sensor: - name: "电费余额" icon: 'mdi:lightning-bolt' unique_id: 'yong_dian_xin_xi' state_topic: "nodejs/state-grid" value_template: "{{ value_json.sumMoney }}" unit_of_measurement: '元' json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json | tojson }}" - name: 'Electricity Usage Day 1' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[0].dayElePq }}' unique_id: "electricity_usage_day1" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[0] | tojson }}" - name: 'Electricity Usage Day 2' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[1].dayElePq }}' unique_id: "electricity_usage_day2" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[1] | tojson }}" - name: 'Electricity Usage Day 3' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[2].dayElePq }}' unique_id: "electricity_usage_day3" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[2] | tojson }}" - name: 'Electricity Usage Day 4' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[3].dayElePq }}' unique_id: "electricity_usage_day4" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[3] | tojson }}" - name: 'Electricity Usage Day 5' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[4].dayElePq }}' unique_id: "electricity_usage_day5" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[4] | tojson }}" - name: 'Electricity Usage Day 6' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[5].dayElePq }}' unique_id: "electricity_usage_day6" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[5] | tojson }}" - name: 'Electricity Usage Day 7' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[6].dayElePq }}' unique_id: "electricity_usage_day7" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[6] | tojson }}" - name: 'Electricity Usage Day 8' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[7].dayElePq }}' unique_id: "electricity_usage_day8" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[7] | tojson }}" - name: 'Electricity Usage Day 9' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[8].dayElePq }}' unique_id: "electricity_usage_day9" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[8] | tojson }}" - name: 'Electricity Usage Day 10' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[9].dayElePq }}' unique_id: "electricity_usage_day10" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[9] | tojson }}" - name: 'Electricity Usage Day 11' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[10].dayElePq }}' unique_id: "electricity_usage_day11" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[10] | tojson }}" - name: 'Electricity Usage Day 12' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[11].dayElePq }}' unique_id: "electricity_usage_day12" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[11] | tojson }}" - name: 'Electricity Usage Day 13' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[12].dayElePq }}' unique_id: "electricity_usage_day13" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[12] | tojson }}" - name: 'Electricity Usage Day 14' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[13].dayElePq }}' unique_id: "electricity_usage_day14" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[13] | tojson }}" - name: 'Electricity Usage Day 15' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[14].dayElePq }}' unique_id: "electricity_usage_day15" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[14] | tojson }}" ``` Loading... 前提:<a class="post_link hover_content_card " href="http://blog.cloud620.cn:6620/index.php/archives/8378/" data-title="最后修改:2026 年 01 月 31 日" data-content="1、完成群辉青龙面板安装2、登陆青龙面板订阅国家电网任务 https://github.com/x2rr/state-grid.git运行订阅任务3、安装mqtt、node-localstorage依赖4、添加环境变量---前提条件(群辉完成mqtt安装) export WSGW_USERNAME="" #网上国网账号 export WSGW_PASSWORD=&qu..."><i data-feather="file-text"></i>群辉安装国家电网青龙版 </a> ## HomeAssistant配置 增加MQTT传感器修改:`configuration.yaml` 文件 参考链接:[https://github.com/x2rr/state-grid/blob/main/README.md](https://github.com/x2rr/state-grid/blob/main/README.md)  ``` mqtt: sensor: - name: "电费余额" icon: 'mdi:lightning-bolt' unique_id: 'yong_dian_xin_xi' state_topic: "nodejs/state-grid" value_template: "{{ value_json.sumMoney }}" unit_of_measurement: '元' json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json | tojson }}" - name: 'Electricity Usage Day 1' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[0].dayElePq }}' unique_id: "electricity_usage_day1" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[0] | tojson }}" - name: 'Electricity Usage Day 2' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[1].dayElePq }}' unique_id: "electricity_usage_day2" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[1] | tojson }}" - name: 'Electricity Usage Day 3' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[2].dayElePq }}' unique_id: "electricity_usage_day3" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[2] | tojson }}" - name: 'Electricity Usage Day 4' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[3].dayElePq }}' unique_id: "electricity_usage_day4" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[3] | tojson }}" - name: 'Electricity Usage Day 5' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[4].dayElePq }}' unique_id: "electricity_usage_day5" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[4] | tojson }}" - name: 'Electricity Usage Day 6' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[5].dayElePq }}' unique_id: "electricity_usage_day6" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[5] | tojson }}" - name: 'Electricity Usage Day 7' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[6].dayElePq }}' unique_id: "electricity_usage_day7" device_class: "energy" unit_of_measurement: "度" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[6] | tojson }}" ```  **YAML 配置重新加载报错问题解决:** 参考链接:[https://github.com/x2rr/state-grid/issues/14](https://github.com/x2rr/state-grid/issues/14)  猜测可能是: * 使用了 device\_class: energy(能源类别) * 但是计量单位使用了中文的 度 * Home Assistant的能源设备类别只接受特定的英文单位 所以将度改为kWh可能解决,以下为完整configuration.yaml配置: ``` mqtt: sensor: - name: "电费余额" icon: 'mdi:lightning-bolt' unique_id: 'yong_dian_xin_xi' state_topic: "nodejs/state-grid" value_template: "{{ value_json.sumMoney }}" unit_of_measurement: '元' json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json | tojson }}" - name: 'Electricity Usage Day 1' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[0].dayElePq }}' unique_id: "electricity_usage_day1" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[0] | tojson }}" - name: 'Electricity Usage Day 2' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[1].dayElePq }}' unique_id: "electricity_usage_day2" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[1] | tojson }}" - name: 'Electricity Usage Day 3' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[2].dayElePq }}' unique_id: "electricity_usage_day3" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[2] | tojson }}" - name: 'Electricity Usage Day 4' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[3].dayElePq }}' unique_id: "electricity_usage_day4" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[3] | tojson }}" - name: 'Electricity Usage Day 5' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[4].dayElePq }}' unique_id: "electricity_usage_day5" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[4] | tojson }}" - name: 'Electricity Usage Day 6' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[5].dayElePq }}' unique_id: "electricity_usage_day6" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[5] | tojson }}" - name: 'Electricity Usage Day 7' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[6].dayElePq }}' unique_id: "electricity_usage_day7" device_class: "energy" unit_of_measurement: "kWh" # 改为标准单位 icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[6] | tojson }}" ``` ### 添加卡片模板 vertical-stack flex-table-card apexcharts-card   ### 添加卡片模板    ``` type: vertical-stack cards: - type: grid columns: 2 cards: - type: entity entity: sensor.dian_fei_yu_e name: 电费余额 attribute: sumMoney unit: 元 icon: mdi:currency-usd - type: entity entity: sensor.electricity_usage_day_1 name: 昨日用电 icon: mdi:lightning-bolt - type: entity entity: sensor.dian_fei_yu_e name: 年度总电费 attribute: totalEleCost unit: 元 icon: mdi:currency-usd - type: entity entity: sensor.dian_fei_yu_e name: 年度总电量 attribute: totalEleNum unit: 度 icon: mdi:lightning-bolt square: false - type: entity entity: sensor.electricity_usage_day_1 name: 昨日日期 attribute: day icon: mdi:calendar-today - type: entity entity: sensor.dian_fei_yu_e name: 更新日期 attribute: amtTime icon: mdi:clock-time-three title: 用电统计 ``` ### 过去7天用电 ``` type: custom:flex-table-card title: 过去7天用电情况 entities: include: sensor.electricity_usage_day* columns: - name: 日期 data: day - name: 用电量 data: state suffix: 度 - name: 电费 data: state modify: parseFloat(x*0.5).toFixed(2) suffix: 元 ```  ### 过去一个月用电 ``` type: custom:apexcharts-card graph_span: 12month header: show: true title: 最近12个月电量统计数据 show_states: true colorize_states: true series: - entity: sensor.dian_fei_yu_e name: 用电量 unit: 度 type: column data_generator: | return entity.attributes.monthList.map((peak, index) => { return [entity.attributes.monthList[index].endDate, entity.attributes.monthList[index].monthEleNum]; }); ```  ### 最近7天的折线图  ``` type: custom:apexcharts-card header: show: true title: 最近7天用电量折线图 graph_span: 8d span: end: day series: - entity: sensor.dian_fei_yu_e name: 用电量 (度) unit: 度 type: line float_precision: 2 show: datalabels: true legend_value: true data_generator: | const dayList = entity.attributes.dayList || []; if (!Array.isArray(dayList) || dayList.length === 0) { return []; } // 计算昨天日期字符串,格式 yyyy-mm-dd const yesterday = new Date(); yesterday.setDate(yesterday.getDate() - 1); const yStr = yesterday.toISOString().slice(0,10); // 过滤出日期 <= 昨天,倒序取7条,最后正序返回 const filtered = dayList.filter(d => d.day <= yStr); const last7 = filtered.slice(0,7).reverse(); return last7.map(item => [item.day, parseFloat(item.dayElePq) || 0]); apex_config: xaxis: type: datetime labels: rotate: -45 style: fontSize: 12px stroke: curve: smooth width: 3 markers: size: 6 colors: - "#FFA500" strokeWidth: 2 tooltip: shared: true followCursor: true dataLabels: enabled: true offsetY: -10 style: colors: - "#000" yaxis: - min: 0 ``` 最近15天的折线图 ``` mqtt: sensor: - name: "电费余额" icon: 'mdi:lightning-bolt' unique_id: 'yong_dian_xin_xi' state_topic: "nodejs/state-grid" value_template: "{{ value_json.sumMoney }}" unit_of_measurement: '元' json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json | tojson }}" - name: 'Electricity Usage Day 1' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[0].dayElePq }}' unique_id: "electricity_usage_day1" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[0] | tojson }}" - name: 'Electricity Usage Day 2' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[1].dayElePq }}' unique_id: "electricity_usage_day2" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[1] | tojson }}" - name: 'Electricity Usage Day 3' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[2].dayElePq }}' unique_id: "electricity_usage_day3" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[2] | tojson }}" - name: 'Electricity Usage Day 4' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[3].dayElePq }}' unique_id: "electricity_usage_day4" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[3] | tojson }}" - name: 'Electricity Usage Day 5' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[4].dayElePq }}' unique_id: "electricity_usage_day5" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[4] | tojson }}" - name: 'Electricity Usage Day 6' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[5].dayElePq }}' unique_id: "electricity_usage_day6" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[5] | tojson }}" - name: 'Electricity Usage Day 7' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[6].dayElePq }}' unique_id: "electricity_usage_day7" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[6] | tojson }}" - name: 'Electricity Usage Day 8' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[7].dayElePq }}' unique_id: "electricity_usage_day8" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[7] | tojson }}" - name: 'Electricity Usage Day 9' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[8].dayElePq }}' unique_id: "electricity_usage_day9" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[8] | tojson }}" - name: 'Electricity Usage Day 10' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[9].dayElePq }}' unique_id: "electricity_usage_day10" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[9] | tojson }}" - name: 'Electricity Usage Day 11' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[10].dayElePq }}' unique_id: "electricity_usage_day11" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[10] | tojson }}" - name: 'Electricity Usage Day 12' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[11].dayElePq }}' unique_id: "electricity_usage_day12" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[11] | tojson }}" - name: 'Electricity Usage Day 13' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[12].dayElePq }}' unique_id: "electricity_usage_day13" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[12] | tojson }}" - name: 'Electricity Usage Day 14' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[13].dayElePq }}' unique_id: "electricity_usage_day14" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[13] | tojson }}" - name: 'Electricity Usage Day 15' state_topic: 'nodejs/state-grid' value_template: '{{ value_json.dayList[14].dayElePq }}' unique_id: "electricity_usage_day15" device_class: "energy" unit_of_measurement: "kWh" icon: "mdi:chart-bell-curve" json_attributes_topic: "nodejs/state-grid" json_attributes_template: "{{ value_json.dayList[14] | tojson }}" ``` 最后修改:2026 年 02 月 01 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏