diff --git a/python_scripts/simstadt_urbi/compare_heat_demands.py b/python_scripts/simstadt_urbi/compare_heat_demands.py index 5e7a0dd0ea94c65c781afc6a82525ea04bf754c3..910083344ab12115f69d93d94fea428db8f8b0b7 100644 --- a/python_scripts/simstadt_urbi/compare_heat_demands.py +++ b/python_scripts/simstadt_urbi/compare_heat_demands.py @@ -5,15 +5,15 @@ import matplotlib.pyplot as plt PROJ_DIR = Path(__file__).parent CITYGML = 'Grombühl_v2' URBI_HEAT_DEMAND = 'totalPrimaryEnergyDemandHeating [kWh/a]' -S_DEMAND = 'Simstadt heat demand [MWh / a]' # Inkl Warmwasser? +S_DEMAND = 'Simstadt heat demand [MWh / a]' # Inkl Warmwasser? U_DEMAND = 'Urbi+ heat demand [MWh / a]' AREA = 'Area [m²]' TYPE = 'Usage Type' -SUFFIX = '_Bensfeld' +SUFFIX = '' # Could be 'Bensheim', for example # Feldberg : 2.493 (Average : 3.0°C, Min : -18°C) # Original : 2.487 (Average : 7.9°C, Min : -12°C), Würzburg -# Bensfeld : 2.475 (Average : 10.2°C, Min : -10°C) +# Bensheim : 2.475 (Average : 10.2°C, Min : -10°C) def get_simstadt_heat_demand(): @@ -26,17 +26,19 @@ def get_simstadt_heat_demand(): decimal='.') simstadt_df = simstadt_df.rename({ - 'Total Yearly Heat+DHW demand': S_DEMAND, - 'PrimaryUsageZoneArea': AREA, - 'PrimaryUsageZoneType': TYPE, - }, axis='columns') + 'Total Yearly Heat+DHW demand': S_DEMAND, + 'PrimaryUsageZoneArea': AREA, + 'PrimaryUsageZoneType': TYPE, + }, axis='columns') simstadt_df[S_DEMAND] = simstadt_df[S_DEMAND] / 1000 # kWh -> MWh simstadt_df = simstadt_df.set_index('GMLId') - by_type_df = simstadt_df.groupby([TYPE]).sum(numeric_only=True)[[AREA, S_DEMAND]] + by_type_df = simstadt_df.groupby([TYPE]).sum( + numeric_only=True)[[AREA, S_DEMAND]] - by_type_df['Specific heat demand [kWh / (m².a)]'] = by_type_df[S_DEMAND] / by_type_df[AREA] * 1000 + by_type_df['Specific heat demand [kWh / (m².a)]'] = by_type_df[S_DEMAND] / \ + by_type_df[AREA] * 1000 print(by_type_df.round(1).to_string()) @@ -67,14 +69,17 @@ def compare_results(simstadt_df, urbi_df): simstadt_urbi = simstadt_df.join(urbi_df)[[S_DEMAND, U_DEMAND]] simstadt_urbi = simstadt_urbi.dropna() - simstadt_urbi.round(1).to_csv(f'simstadt_vs_urbi_heat_demands_{CITYGML}{SUFFIX}.csv', sep=';', decimal='.') + simstadt_urbi.round(1).to_csv( + f'simstadt_vs_urbi_heat_demands_{CITYGML}{SUFFIX}.csv', sep=';', decimal='.') plt.rcParams["figure.figsize"] = (10, 10) - ax = simstadt_urbi.plot.scatter(x=S_DEMAND, y=U_DEMAND, title=f'Urbi vs SimStadt Heat-demand\n{CITYGML}{SUFFIX}') + fig = simstadt_urbi.plot.scatter( + x=S_DEMAND, y=U_DEMAND, title=f'Urbi vs SimStadt Heat-demand\n{CITYGML}{SUFFIX}') max_heat_demand = simstadt_urbi.max().max() - ax.plot([0, max_heat_demand], [0, max_heat_demand]) - ax.axis('equal') - plt.savefig(f'simstadt_vs_urbi_heat_demands_{CITYGML}{SUFFIX}.png', bbox_inches='tight') + fig.plot([0, max_heat_demand], [0, max_heat_demand]) + fig.axis('equal') + plt.savefig( + f'simstadt_vs_urbi_heat_demands_{CITYGML}{SUFFIX}.png', bbox_inches='tight') print("Correlation:") print(simstadt_urbi.corr()) diff --git "a/python_scripts/simstadt_urbi/simstadt_vs_urbi_heat_demands_Gromb\303\274hl_v2.png" "b/python_scripts/simstadt_urbi/simstadt_vs_urbi_heat_demands_Gromb\303\274hl_v2.png" index a213c1d33a3a87825677c524bb8ef5f1de0598ad..39720b8569c42c998c42466e3f6a589ee8a1c7ad 100644 Binary files "a/python_scripts/simstadt_urbi/simstadt_vs_urbi_heat_demands_Gromb\303\274hl_v2.png" and "b/python_scripts/simstadt_urbi/simstadt_vs_urbi_heat_demands_Gromb\303\274hl_v2.png" differ