From f2ff8beae83690ac5cc466aa1381b5d913b2b3e4 Mon Sep 17 00:00:00 2001 From: lisazeyen Date: Wed, 5 Apr 2023 15:45:07 +0200 Subject: [PATCH] fix plot bugs --- scripts/plot_summary.py | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/scripts/plot_summary.py b/scripts/plot_summary.py index af028116..b771f079 100644 --- a/scripts/plot_summary.py +++ b/scripts/plot_summary.py @@ -41,6 +41,8 @@ def rename_techs(label): "ground heat pump", "resistive heater", "Fischer-Tropsch", + "land transport fuel cell", + "land transport oil" ] rename_if_contains_dict = { @@ -268,7 +270,6 @@ def plot_balances(): i for i in balances_df.index.levels[0] if i not in co2_carriers ] - fig, ax = plt.subplots(figsize=(12, 8)) for k, v in balances.items(): df = balances_df.loc[v] @@ -280,7 +281,7 @@ def plot_balances(): # remove trailing link ports df.index = [ i[:-1] - if ((i not in ["co2", "NH3"]) and (i[-1:] in ["0", "1", "2", "3"])) + if ((i not in ["co2", "NH3", "H2"]) and (i[-1:] in ["0", "1", "2", "3"])) else i for i in df.index ] @@ -314,6 +315,8 @@ def plot_balances(): new_columns = df.columns.sort_values() + fig, ax = plt.subplots(figsize=(12, 8)) + df.loc[new_index, new_columns].T.plot( kind="bar", ax=ax, @@ -437,7 +440,7 @@ def historical_emissions(countries): return emissions -def plot_carbon_budget_distribution(input_eurostat): +def plot_carbon_budget_distribution(input_eurostat, input_eea): """ Plot historical carbon emissions in the EU and decarbonization path. """ @@ -452,6 +455,20 @@ def plot_carbon_budget_distribution(input_eurostat): plt.rcParams["xtick.labelsize"] = 20 plt.rcParams["ytick.labelsize"] = 20 + + path_cb = "results/" + snakemake.params.RDIR + "csvs/" + countries = snakemake.config["countries"] + emissions_scope = snakemake.config["energy"]["emissions"] + # this only affects the estimation of CO2 emissions for BA, RS, AL, ME, MK + report_year = snakemake.config["energy"]["eurostat_report_year"] + e_1990 = co2_emissions_year( + countries, input_eurostat, input_eea, opts, emissions_scope, + report_year, year=1990 + ) + + + CO2_CAP = pd.read_csv(path_cb + "carbon_budget_distribution.csv", index_col=0) + plt.figure(figsize=(10, 7)) gs1 = gridspec.GridSpec(1, 1) ax1 = plt.subplot(gs1[0, 0]) @@ -459,10 +476,6 @@ def plot_carbon_budget_distribution(input_eurostat): ax1.set_ylim([0, 5]) ax1.set_xlim([1990, snakemake.config["scenario"]["planning_horizons"][-1] + 1]) - path_cb = "results/" + snakemake.params.RDIR + "/csvs/" - countries = snakemake.config["countries"] - e_1990 = co2_emissions_year(countries, input_eurostat, opts, year=1990) - CO2_CAP = pd.read_csv(path_cb + "carbon_budget_distribution.csv", index_col=0) ax1.plot(e_1990 * CO2_CAP[o], linewidth=3, color="dodgerblue", label=None) @@ -540,7 +553,7 @@ def plot_carbon_budget_distribution(input_eurostat): path_cb_plot = "results/" + snakemake.params.RDIR + "/graphs/" plt.savefig(path_cb_plot + "carbon_budget_plot.pdf", dpi=300) - +#%% if __name__ == "__main__": if "snakemake" not in globals(): from _helpers import mock_snakemake @@ -561,4 +574,5 @@ if __name__ == "__main__": opts = sector_opts.split("-") for o in opts: if "cb" in o: - plot_carbon_budget_distribution(snakemake.input.eurostat) + plot_carbon_budget_distribution(snakemake.input.eurostat, + snakemake.input.co2)