Advertisement
dykandDK

HA - YAML - Apex chart with stacked Energy prices

Jan 4th, 2023 (edited)
1,544
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.54 KB | None | 0 0
  1. type: custom:apexcharts-card
  2. apex_config:
  3.   tooltip:
  4.     x:
  5.       format: ddd kl. HH
  6.   chart:
  7.     height: 300px
  8.     defaultLocale: da
  9.     locales:
  10.       - name: da
  11.         options:
  12.           shortDays:
  13.            - Søn
  14.             - Man
  15.             - Tir
  16.             - Ons
  17.             - Tor
  18.             - Fre
  19.             - Lør
  20.   xaxis:
  21.     axisTicks:
  22.       offsetX: 0
  23.       offsetY: -3
  24.     labels:
  25.       show: true
  26.       format: HH
  27.       tickAmount: 11
  28.       style:
  29.         fontSize: 10px
  30.         fontWeight: 399
  31.   plotOptions:
  32.     bar:
  33.       columnWidth: 90
  34. all_series_config:
  35.   unit: ' kr.'
  36. experimental:
  37.   color_threshold: true
  38. header:
  39.   title: Elpriser pr. time (kr/kWh)
  40.   show: true
  41.   standard_format: true
  42.   show_states: false
  43.   colorize_states: true
  44. graph_span: 2d
  45. stacked: true
  46. now:
  47.   show: true
  48.   label: Nu
  49. span:
  50.   start: day
  51.   offset: '-0h'
  52. yaxis:
  53.   - min: 0
  54.     max: 4
  55.     apex_config:
  56.       tickAmount: 5
  57. series:
  58.   - entity: sensor.elpriser_inkl_afgifter
  59.     type: column
  60.     color: orange
  61.     name: Afgifter
  62.     data_generator: |
  63.      var today = entity.attributes.raw_today.map((start, index) => {
  64.         return [new Date(start["hour"]).getTime()+180000, entity.attributes.raw_today[index]["price"]-hass.states['sensor.elpriser_excl_afgifter'].attributes.raw_today[index]["price"]];
  65.       });
  66.       if (entity.attributes.tomorrow_valid) {
  67.         var tomorrow = entity.attributes.raw_tomorrow.map((start, index) => {
  68.         return [new Date(start["hour"]).getTime()+180000, entity.attributes.raw_tomorrow[index]["price"]-hass.states['sensor.elpriser_excl_afgifter'].attributes.raw_tomorrow[index]["price"]];
  69.         });
  70.  
  71.         var data = today.concat(tomorrow);
  72.       } else {
  73.         var data = today
  74.       }
  75.       return data;
  76.     float_precision: 2
  77.     show:
  78.       legend_value: false
  79.   - entity: sensor.elpriser_excl_afgifter
  80.     type: column
  81.     name: Spot
  82.     data_generator: |
  83.      var today = entity.attributes.raw_today.map((start, index) => {
  84.         return [new Date(start["hour"]).getTime()+180000, entity.attributes.raw_today[index]["price"]];
  85.       });
  86.       if (entity.attributes.tomorrow_valid) {
  87.         var tomorrow = entity.attributes.raw_tomorrow.map((start, index) => {
  88.         return [new Date(start["hour"]).getTime()+180000, entity.attributes.raw_tomorrow[index]["price"]];
  89.         });
  90.  
  91.         var data = today.concat(tomorrow);
  92.       } else {
  93.         var data = today
  94.       }
  95.       return data;
  96.     float_precision: 2
  97.     show:
  98.       legend_value: false
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement