import streamlit as st from src.utils import ( format_energy_eq_electric_vehicle, format_energy_eq_electricity_consumption_ireland, format_energy_eq_electricity_production, format_energy_eq_physical_activity, format_gwp_eq_airplane_paris_nyc, format_gwp_eq_streaming, range_plot, PhysicalActivity, EnergyProduction, ) ############################################################################################################ def get_impacts(model, active_params, total_params, mix_ghg, mix_adpe, mix_pe): return 1 ############################################################################################################ def display_impacts(impacts): st.divider() col1, col_energy, col_ghg, col2 = st.columns([1,2,2,1]) with col_energy: st.markdown(f"""
โก๏ธ
Energy
""", unsafe_allow_html = True) st.markdown(f'Electricity consumption
', unsafe_allow_html = True) range_plot(impacts.energy.magnitude,impacts.energy_min.magnitude, impacts.energy_max.magnitude, impacts.energy.units) with col_ghg: st.markdown(f"""๐๏ธ
GHG Emissions
""", unsafe_allow_html = True) st.markdown(f'Effect on global warming
', unsafe_allow_html = True) range_plot(impacts.gwp.magnitude,impacts.gwp_min.magnitude, impacts.gwp_max.magnitude, impacts.gwp.units) st.markdown(f'๐ชจ
""", unsafe_allow_html = True) st.markdown(f"""Abiotic Resources
""", unsafe_allow_html = True) st.markdown('Use of metals and minerals
', unsafe_allow_html = True) range_plot(impacts.adpe.magnitude,impacts.adpe_min.magnitude, impacts.adpe_max.magnitude, impacts.adpe.units) with col_pe: st.markdown(f"""โฝ๏ธ
""", unsafe_allow_html = True) st.markdown(f"""Primary Energy
""", unsafe_allow_html = True) st.markdown(f'Use of natural energy resources
', unsafe_allow_html = True) range_plot(impacts.pe.magnitude,impacts.pe_min.magnitude, impacts.pe_max.magnitude, impacts.pe.units) with col_water: st.markdown(f"""๐ฐ
""", unsafe_allow_html = True) st.markdown(f"""Water
""", unsafe_allow_html = True) st.markdown(f'Evaluates the use of water
', unsafe_allow_html = True) st.markdown(f"""Upcoming...
""", unsafe_allow_html = True) ############################################################################################################ def display_equivalent(impacts): st.divider() ev_eq = format_energy_eq_electric_vehicle(impacts.energy) streaming_eq = format_gwp_eq_streaming(impacts.gwp) col1, col2, col3 = st.columns(3) with col1: physical_activity, distance = format_energy_eq_physical_activity(impacts.energy) if physical_activity == PhysicalActivity.WALKING: physical_activity = "๐ถ " + physical_activity.capitalize() if physical_activity == PhysicalActivity.RUNNING: physical_activity = "๐ " + physical_activity.capitalize() st.markdown( f'Based on energy consumption
', unsafe_allow_html=True, ) with col2: ev_eq = format_energy_eq_electric_vehicle(impacts.energy) st.markdown( 'Based on energy consumption
', unsafe_allow_html=True, ) with col3: streaming_eq = format_gwp_eq_streaming(impacts.gwp) st.markdown('Based on GHG emissions
', unsafe_allow_html=True, ) st.divider() st.markdown( 'If this use case is largely deployed around the world, the equivalent impacts would be the impacts of this request x 1% of 8 billion people x 365 days in a year.
', unsafe_allow_html=True, ) col4, col5, col6 = st.columns(3) with col4: electricity_production, count = format_energy_eq_electricity_production( impacts.energy ) if electricity_production == EnergyProduction.NUCLEAR: emoji = "โข๏ธ" name = "Nuclear power plants" if electricity_production == EnergyProduction.WIND: emoji = "๐จ๏ธ " name = "Wind turbines" st.markdown( f'Based on energy consumption
', unsafe_allow_html=True, ) with col5: ireland_count = format_energy_eq_electricity_consumption_ireland(impacts.energy) st.markdown( f'Based on energy consumption
', unsafe_allow_html=True, ) with col6: paris_nyc_airplane = format_gwp_eq_airplane_paris_nyc(impacts.gwp) st.markdown(f'Based on GHG emissions
', unsafe_allow_html = True) def display_equivalent_energy(impacts): st.markdown('โ {distance.magnitude:.3g} {distance.units}
""", unsafe_allow_html = True) with col3: ev_eq = format_energy_eq_electric_vehicle(impacts.energy) st.markdown(f"""๐ Electric Vehicle
""", unsafe_allow_html = True) st.markdown(f"""โ {ev_eq.magnitude:.3g} {ev_eq.units}
""", unsafe_allow_html = True) with col1: st.markdown(f"""โก๏ธEnergy
""", unsafe_allow_html = True) st.markdown(f"""{impacts.energy.magnitude:.3g} {impacts.energy.units}
""", unsafe_allow_html = True) st.divider() st.markdown('{impacts.energy.magnitude:.3g} {impacts.energy.units} x 1% of 8 billion people x 365 days are โ equivalent to
Energy produced yearly
', unsafe_allow_html = True) with col5: ireland_count = format_energy_eq_electricity_consumption_ireland(impacts.energy) st.markdown(f'Yearly electricity consumption
', unsafe_allow_html = True) def display_equivalent_ghg(impacts): st.markdown('๐๏ธGHG Emissions
""", unsafe_allow_html = True) st.markdown(f"""{impacts.gwp.magnitude:.3g} {impacts.gwp.units}
""", unsafe_allow_html = True) with col2: streaming_eq = format_gwp_eq_streaming(impacts.gwp) st.markdown(f"""โฏ๏ธ Streaming
""", unsafe_allow_html = True) st.markdown(f"""โ {streaming_eq.magnitude:.3g} {streaming_eq.units}
""", unsafe_allow_html = True) st.divider() st.markdown('{impacts.gwp.magnitude:.3g} {impacts.gwp.units} x 1% of 8 billion people x 365 days are โ equivalent to
Based on GHG emissions
', unsafe_allow_html = True)