type: custom:apexcharts-card apex_config: tooltip: x: format: ddd kl. HH fixed: enabled: true position: topRight chart: height: 350px defaultLocale: da locales: - name: da options: shortDays: - Søn - Man - Tir - Ons - Tor - Fre - Lør xaxis: axisTicks: offsetX: 0 offsetY: -3 labels: show: true format: HH tickAmount: 11 style: fontSize: 10px fontWeight: 399 plotOptions: bar: dataLabels: position: center maxItems: 32 hideOverflowingLabels: true orientation: vertical columnWidth: 90% dataLabels: enabled: true style: fontSize: 10px colors: - "#fff" distributed: true background: enabled: false formatter: | EVAL:function(value) { return value.toFixed(2); } all_series_config: unit: " kr." experimental: color_threshold: true header: title: Sammensætning af elpris_SL show: true standard_format: true show_states: false colorize_states: true stacked: true now: show: true label: Nu graph_span: 23h span: start: day offset: "-0h" yaxis: - min: 0 max: "|+0.1|" apex_config: tickAmount: 5 forceNiceScale: true series: - entity: sensor.stromligning_current_price_vat type: line name: Total data_generator: | var data = entity.attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), entity.attributes.prices[index]["price"]]; }); if (hass.states['binary_sensor.stromligning_tomorrow_available_vat'].state == "on") { var tomorrow = hass.states['binary_sensor.stromligning_tomorrow_available_vat'].attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), hass.states['binary_sensor.stromligning_tomorrow_available_vat'].attributes.prices[index]["price"]]; }); data = data.concat(tomorrow) } return data; float_precision: 2 show: legend_value: false in_header: false datalabels: false extend_to: now color_threshold: - value: 0 color: green - value: 2 color: yellow - value: 3 color: orange - value: 4 color: red - value: 5 color: darkred - entity: sensor.stromligning_current_price_vat type: column name: Elafgift color: "#00B0F0" data_generator: > var tax = parseFloat(hass.states['sensor.stromligning_electricity_tax_vat'].state) || 0; var data = entity.attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), tax]; }); if (hass.states['binary_sensor.stromligning_tomorrow_available_vat'].state == "on") { var tomorrow = hass.states['binary_sensor.stromligning_tomorrow_available_vat'].attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), tax]; }); data = data.concat(tomorrow) } return data; float_precision: 2 show: legend_value: false in_header: false datalabels: true - entity: sensor.stromligning_current_price_vat type: column name: Elselskab color: "#00DDD0" data_generator: > var avance = parseFloat(hass.states['sensor.stromligning_surcharge_vat'].state) || 0; var data = entity.attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), avance]; }); if (hass.states['binary_sensor.stromligning_tomorrow_available_vat'].state == "on") { var tomorrow = hass.states['binary_sensor.stromligning_tomorrow_available_vat'].attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), avance]; }); data = data.concat(tomorrow) } return data; float_precision: 2 show: legend_value: false in_header: false datalabels: true - entity: sensor.stromligning_distribution_vat type: column name: Tariffer color: "#63666A" data_generator: > var nettariff = parseFloat(hass.states['sensor.stromligning_nettariff_vat'].state) || 0; var systemtariff = parseFloat(hass.states['sensor.stromligning_systemtariff_vat'].state) || 0; var energinet = nettariff + systemtariff; var data = entity.attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), entity.attributes.prices[index]["price"] + energinet]; }); return data; float_precision: 2 show: legend_value: false in_header: false datalabels: true - entity: sensor.stromligning_spotprice_vat type: column name: Spot color: "#92D050" data_generator: > var data = entity.attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), entity.attributes.prices[index]["price"]]; }); if (hass.states['binary_sensor.stromligning_tomorrow_spotprice_vat'].state == "on") { var tomorrow = hass.states['binary_sensor.stromligning_tomorrow_spotprice_vat'].attributes.prices.map((start, index) => { return [new Date(start["start"]).getTime(), hass.states['binary_sensor.stromligning_tomorrow_spotprice_vat'].attributes.prices[index]["price"]]; }); data = data.concat(tomorrow) } return data; float_precision: 2 show: legend_value: false in_header: false datalabels: true