From bcf13654b2d1fdcc05a21a8165db48c46e64965c Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 11:49:54 +0100 Subject: [PATCH 01/38] :wrench: rewire distribution_generator to external/latest catalog URLs - Switch THOUSAND_BINS_URL, THOUSAND_BINS_HISTORICAL_URL and THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL to external/poverty_inequality/latest/* (versionless). - Switch the PIP percentiles and main-indicators reads from the legacy wide-flat world_bank_pip_legacy tables to the dimensional external/world_bank_pip/{percentiles,complete_series} tables, with a small filter/merge block in run() to rebuild the flat shape the plot code expects. - Drop PIP_VERSION, THOUSAND_BINS_VERSION and THOUSAND_BINS_HISTORICAL_VERSION. Underlying values are identical to the legacy tables when versions match (spot-checked World 2020: mean=19.83, median=8.2, top1_thr=157.20, decile9_thr=50.0, headcount_ratio_3000=82.98). External historical_poverty and world_bank_pip URLs only become live once owid/etl#6160 merges. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 43 +++++++++++++------ 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d1c86e44..f4a1df8e 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -75,36 +75,53 @@ # Set correction factor of the median to show the label in the plot CORRECTION_FACTOR_LABEL = 1 -# Define version of PIP and 1000 bins data -PIP_VERSION = "2025-10-09" -THOUSAND_BINS_VERSION = "2025-10-13" +# Version of harmonized national poverty lines (only stale garden dep left; everything else uses external/latest). NATIONAL_LINES_VERSION = "2025-06-11" -THOUSAND_BINS_HISTORICAL_VERSION = "2025-10-23" # Define URLs +EXTERNAL_BASE = "http://catalog.ourworldindata.org/external/poverty_inequality/latest" -THOUSAND_BINS_URL = f"http://catalog.ourworldindata.org/garden/wb/{THOUSAND_BINS_VERSION}/thousand_bins_distribution/thousand_bins_distribution.feather?nocache" -PERCENTILES_URL = f"http://catalog.ourworldindata.org/garden/wb/{PIP_VERSION}/world_bank_pip_legacy/percentiles_income_consumption_2021.feather?nocache" -THOUSAND_BINS_HISTORICAL_URL = f"http://catalog.ourworldindata.org/garden/poverty_inequality/{THOUSAND_BINS_HISTORICAL_VERSION}/historical_poverty/thousand_bins_interpolated_ginis.feather?nocache" -THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL = f"http://catalog.ourworldindata.org/garden/poverty_inequality/{THOUSAND_BINS_HISTORICAL_VERSION}/historical_poverty/thousand_bins_interpolated_ginis_all_lognormal.feather?nocache" +THOUSAND_BINS_URL = f"{EXTERNAL_BASE}/thousand_bins_distribution/thousand_bins_distribution.feather?nocache" +THOUSAND_BINS_HISTORICAL_URL = f"{EXTERNAL_BASE}/historical_poverty/thousand_bins_interpolated_ginis.feather?nocache" +THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL = f"{EXTERNAL_BASE}/historical_poverty/thousand_bins_interpolated_ginis_all_lognormal.feather?nocache" +PERCENTILES_URL = f"{EXTERNAL_BASE}/world_bank_pip/percentiles.feather?nocache" +COMPLETE_SERIES_URL = f"{EXTERNAL_BASE}/world_bank_pip/complete_series.feather?nocache" -MAIN_INDICATORS_URL = f"http://catalog.ourworldindata.org/garden/wb/{PIP_VERSION}/world_bank_pip_legacy/income_consumption_2021.feather?nocache" NATIONAL_LINES_URL = f"http://catalog.ourworldindata.org/garden/wb/{NATIONAL_LINES_VERSION}/harmonized_national_poverty_lines/harmonized_national_poverty_lines.feather?nocache" def run() -> None: - # Read data + # Read external feather files (thousand_bins + historical reconstructions + national lines). df_thousand_bins = pd.read_feather(THOUSAND_BINS_URL) - df_percentiles = pd.read_feather(PERCENTILES_URL) df_thousand_bins_historical = pd.read_feather(THOUSAND_BINS_HISTORICAL_URL) df_thousand_bins_historical_all_lognormal = pd.read_feather( THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL ) - - df_main_indicators = pd.read_feather(MAIN_INDICATORS_URL) df_national_lines = pd.read_feather(NATIONAL_LINES_URL) + # World Bank PIP dimensional tables → flat shapes the plotting code expects. + # Percentiles: legacy table was filtered to ppp_version=2021; replicate by filtering here. + df_percentiles = pd.read_feather(PERCENTILES_URL) + df_percentiles = df_percentiles[df_percentiles["ppp_version"] == 2021].reset_index(drop=True) + + # Main indicators (used only for World aggregates): rebuild a flat per-(country, year) + # frame from complete_series by selecting the right slice for each column family. + df_complete = pd.read_feather(COMPLETE_SERIES_URL) + base = (df_complete["ppp_version"] == 2021) & (df_complete["welfare_type"] == "income or consumption") + df_summary = df_complete[base & df_complete["decile"].isna() & df_complete["poverty_line"].isna()][ + ["country", "year", "mean", "median", "top1_thr"] + ] + df_decile9 = df_complete[base & (df_complete["decile"] == "9") & df_complete["poverty_line"].isna()][ + ["country", "year", "thr"] + ].rename(columns={"thr": "decile9_thr"}) + df_pov30 = df_complete[base & df_complete["decile"].isna() & (df_complete["poverty_line"] == "3000")][ + ["country", "year", "headcount_ratio"] + ].rename(columns={"headcount_ratio": "headcount_ratio_3000"}) + df_main_indicators = df_summary.merge(df_decile9, on=["country", "year"], how="left").merge( + df_pov30, on=["country", "year"], how="left" + ) + # in df_national_lines, replace the value of "harmonized_national_poverty_line" for United States with 27.10 df_national_lines.loc[ (df_national_lines["country"] == "United States"), From 2b47ac315b0d3973ace165a1fea69219c046085d Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 14:28:40 +0100 Subject: [PATCH 02/38] wip --- .../distribution_generator.py | 141 ++++++------------ 1 file changed, 46 insertions(+), 95 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index f4a1df8e..415d656b 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -92,13 +92,13 @@ def run() -> None: - # Read external feather files (thousand_bins + historical reconstructions + national lines). - df_thousand_bins = pd.read_feather(THOUSAND_BINS_URL) - df_thousand_bins_historical = pd.read_feather(THOUSAND_BINS_HISTORICAL_URL) - df_thousand_bins_historical_all_lognormal = pd.read_feather( - THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL - ) - df_national_lines = pd.read_feather(NATIONAL_LINES_URL) + # Skipped while iterating on pen parade — re-enable along with the disabled plot blocks below. + # df_thousand_bins = pd.read_feather(THOUSAND_BINS_URL) + # df_thousand_bins_historical = pd.read_feather(THOUSAND_BINS_HISTORICAL_URL) + # df_thousand_bins_historical_all_lognormal = pd.read_feather( + # THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL + # ) + # df_national_lines = pd.read_feather(NATIONAL_LINES_URL) # World Bank PIP dimensional tables → flat shapes the plotting code expects. # Percentiles: legacy table was filtered to ppp_version=2021; replicate by filtering here. @@ -122,11 +122,11 @@ def run() -> None: df_pov30, on=["country", "year"], how="left" ) - # in df_national_lines, replace the value of "harmonized_national_poverty_line" for United States with 27.10 - df_national_lines.loc[ - (df_national_lines["country"] == "United States"), - "harmonized_national_poverty_line", - ] = 27.10 + # Skipped while iterating on pen parade (no national-lines consumer enabled). + # df_national_lines.loc[ + # (df_national_lines["country"] == "United States"), + # "harmonized_national_poverty_line", + # ] = 27.10 # Set seaborn style and color palette sns.set_style("ticks") @@ -135,6 +135,7 @@ def run() -> None: # Show texts and not curves for annotations plt.rcParams["svg.fonttype"] = "none" + """ # disabled while iterating on pen parade — flip to delete this and the matching closer to re-enable # Plot global distribution, separating in two with the International Poverty Line for lines in POVERTY_LINES_AREA_GLOBAL: distributional_plots( @@ -311,6 +312,7 @@ def run() -> None: period="day", survey_based=False, ) + """ # end of block disabled while iterating on pen parade # Pen parades pen_parade( @@ -349,6 +351,7 @@ def run() -> None: preferred_welfare_type="income", ) + """ # disabled while iterating on pen parade — flip to delete this and the matching closer to re-enable # Historical data distributional_plots( data=df_thousand_bins_historical, @@ -399,6 +402,7 @@ def run() -> None: width=1150, height=220, ) + """ # end of block disabled while iterating on pen parade # # For synthetic data @@ -1472,64 +1476,41 @@ def pen_parade( else: line_plot.get_yaxis().set_major_formatter(plt.ScalarFormatter()) + # Reference-line ticks collected here become the y-axis tick labels, replacing the + # default dollar-amount labels with the labels that previously sat on each reference line. + reference_ticks: list[tuple[float, str]] = [] + if add_lines: - # Add a horizontal line for the international poverty line + # International poverty line plt.axhline( y=ipl, color=sns.color_palette("deep")[3], linestyle="--", linewidth=0.8, ) - plt.text( - x=99, - y=ipl, - s=f"International Poverty Line: ${round(ipl,2):.2f}\n", - color="black", - rotation=0, - horizontalalignment="right", - fontsize=8, - linespacing=0.5, - ) + reference_ticks.append((ipl, f"→ International Poverty Line\n${round(ipl, 2):.2f}")) - # Add a horizontal line for the world mean + # World mean plt.axhline( y=world_mean_year, color=sns.color_palette("deep")[3], linestyle="--", linewidth=0.8, ) - plt.text( - x=99, - y=world_mean_year, - s=f"World mean: ${round(world_mean_year,2):.2f}\n", - color="black", - rotation=0, - horizontalalignment="right", - fontsize=8, - linespacing=0.5, - ) + reference_ticks.append((world_mean_year, f"→ World mean\n${round(world_mean_year, 2):.2f}")) - # Add a horizontal line for the world median + # World median plt.axhline( y=world_median_year, color=sns.color_palette("deep")[3], linestyle="--", linewidth=0.8, ) - plt.text( - x=99, - y=world_median_year, - s=f"World median: ${round(world_median_year,2):.2f}\n", - color="black", - rotation=0, - horizontalalignment="right", - fontsize=8, - linespacing=0.5, - ) + reference_ticks.append((world_median_year, f"→ World median\n${round(world_median_year, 2):.2f}")) plt.text( x=0, y=world_median_year, - s=f"The poorest 50% live on less than ${round(world_median_year,2):.2f} a {period}\n", + s=f"The poorest 50% live on less than ${round(world_median_year, 2):.2f} a {period}\n", color="black", rotation=0, horizontalalignment="left", @@ -1537,7 +1518,7 @@ def pen_parade( linespacing=0.5, ) - # Add an horizontal line for a poverty line representative of a high-income country + # High-income poverty line — narrative stays in the plot on the left. plt.axhline( y=POVERTY_LINE_HIGH_INCOME * period_factor, color=sns.color_palette("deep")[3], @@ -1547,7 +1528,7 @@ def pen_parade( plt.text( x=0, y=POVERTY_LINE_HIGH_INCOME * period_factor, - s=f"${round(POVERTY_LINE_HIGH_INCOME * period_factor,2):.0f} corresponds to the poverty line of a high-income country\n", + s=f"${round(POVERTY_LINE_HIGH_INCOME * period_factor, 2):.0f} corresponds to the poverty line of a high-income country\n", color="black", rotation=0, horizontalalignment="left", @@ -1557,7 +1538,7 @@ def pen_parade( plt.text( x=0, y=POVERTY_LINE_HIGH_INCOME * period_factor, - s=f"\nGlobally, {world_share_below_high_income_line/100:.1%} live on less than ${round(POVERTY_LINE_HIGH_INCOME * period_factor,2):.0f} a {period}", + s=f"\nGlobally, {world_share_below_high_income_line / 100:.1%} live on less than ${round(POVERTY_LINE_HIGH_INCOME * period_factor, 2):.0f} a {period}", color="black", rotation=0, horizontalalignment="left", @@ -1566,62 +1547,26 @@ def pen_parade( linespacing=0.5, ) - # Add a horizontal line for the 90th percentile of the world + # 90th percentile of the world plt.axhline( y=world_90th_percentile, color=sns.color_palette("deep")[3], linestyle="--", linewidth=0.8, ) - plt.text( - x=99, - y=world_90th_percentile, - s=f"${round(world_90th_percentile,2):.2f}\n", - color="black", - rotation=0, - horizontalalignment="right", - fontsize=8, - linespacing=0.5, - ) - plt.text( - x=99, - y=world_90th_percentile, - s=f"\n10% is richer", - color="black", - rotation=0, - horizontalalignment="right", - verticalalignment="top", - fontsize=8, - linespacing=0.5, + reference_ticks.append( + (world_90th_percentile, f"→ ${round(world_90th_percentile, 2):.2f}\n10% is richer") ) - # Add a horizontal line for the 99th percentile of the world + # 99th percentile of the world plt.axhline( y=world_99th_percentile, color=sns.color_palette("deep")[3], linestyle="--", linewidth=0.8, ) - plt.text( - x=99, - y=world_99th_percentile, - s=f"${round(world_99th_percentile,2):.2f}\n", - color="black", - rotation=0, - horizontalalignment="right", - fontsize=8, - linespacing=0.5, - ) - plt.text( - x=99, - y=world_99th_percentile, - s=f"\n1% is richer", - color="black", - rotation=0, - horizontalalignment="right", - verticalalignment="top", - fontsize=8, - linespacing=0.5, + reference_ticks.append( + (world_99th_percentile, f"→ ${round(world_99th_percentile, 2):.2f}\n1% is richer") ) # Remove y-axis labels and ticks @@ -1638,10 +1583,16 @@ def pen_parade( plt.FuncFormatter(lambda x, _: f"{x/100:.0%}") ) - # Do the same for the y-axis, with $ - line_plot.get_yaxis().set_major_formatter( - plt.FuncFormatter(lambda x, _: f"${x:.0f} per {period}") - ) + # Replace the default dollar-amount y-tick labels with the reference-line labels. + # Falls back to the dollar formatter when there are no reference lines (add_lines=False). + if reference_ticks: + yticks, yticklabels = zip(*sorted(reference_ticks)) + line_plot.set_yticks(list(yticks)) + line_plot.set_yticklabels(list(yticklabels), fontsize=8, linespacing=1.5) + else: + line_plot.get_yaxis().set_major_formatter( + plt.FuncFormatter(lambda x, _: f"${x:.0f} per {period}") + ) # Make the plot tighter, with the y axis closer to the plot and the x axis being shown between 0 and 100 line_plot.set_xlim(0, 100) From 6bf0107b1f6939698a27209d2bd7fee9043c0c9f Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 15:52:51 +0100 Subject: [PATCH 03/38] :sparkles: pen parade: cut, reference labels, period-aware decimals MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - New cut_percentile option on pen_parade (default 95): caps y above the cut so the curve plateaus at the top, leaving room for labels on the right. The p99 label moves to a top-of-chart annotation anchored at x=cut_percentile when the cut is below 99. - Replace default $-amount y-tick labels with the reference-line labels themselves (IPL, World mean/median, p90, p99, country medians for Norway/US/Sweden/UK), with per-label collision handling. - Country median rows pulled from complete_series, preferring consumption over income where both exist; pre-merged into df_main_indicators. - New copy: "→ The richest 10% have an income of more than \$X per {period}" and "↑ The richest 1% live on more than \$X per {period}". - Dollar formatting: 2 decimals for daily values, 0 for monthly/yearly. - Pen-parade figure aspect 1:1.25 (1000x1250), right margin reserved for labels. - Other pen_parade/disability_plots blocks temporarily skipped via triple-quoted strings to iterate on pen_parade only. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 184 ++++++++++++++++-- 1 file changed, 163 insertions(+), 21 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 415d656b..b1fef497 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -23,9 +23,9 @@ WIDTH = 1500 HEIGHT = 750 -# For Pen Parade +# For Pen Parade — 1:1.25 (taller than wide) WIDTH_PEN = 1000 -HEIGHT_PEN = 1000 +HEIGHT_PEN = 1250 # Define gridsize for when I need higher resolution GRIDSIZE_HIGHER_RESOLUTION = 1000 @@ -121,6 +121,25 @@ def run() -> None: df_main_indicators = df_summary.merge(df_decile9, on=["country", "year"], how="left").merge( df_pov30, on=["country", "year"], how="left" ) + # Add country-level rows for a handful of reference countries. PIP stores each country's + # smoothed combined series under either welfare_type="income" or "consumption" + # (whichever the country reports primarily); the combined "income or consumption" label + # is only used for the World aggregate. Prefer consumption when both are available + # (PIP's preferred welfare measure for most countries), fall back to income otherwise. + country_extras = df_complete[ + (df_complete["ppp_version"] == 2021) + & df_complete["welfare_type"].isin(["consumption", "income"]) + & df_complete["decile"].isna() + & df_complete["poverty_line"].isna() + & df_complete["country"].isin(["Norway", "United States", "Sweden", "United Kingdom"]) + ][["country", "year", "mean", "median", "top1_thr", "welfare_type"]] + # "consumption" sorts before "income" alphabetically, so keep="first" prefers consumption. + country_extras = ( + country_extras.sort_values(["country", "year", "welfare_type"]) + .drop_duplicates(subset=["country", "year"], keep="first") + .drop(columns="welfare_type") + ) + df_main_indicators = pd.concat([df_main_indicators, country_extras], ignore_index=True) # Skipped while iterating on pen parade (no national-lines consumer enabled). # df_national_lines.loc[ @@ -1351,9 +1370,15 @@ def pen_parade( preferred_welfare_type: Literal["income", "consumption", None] = None, width: int = WIDTH_PEN, height: int = HEIGHT_PEN, + cut_percentile: float = 95, ) -> None: """ Plot Pen parades (percentiles vs. income) with seaborn, with multiple options for customization. + + ``cut_percentile`` truncates the x-axis at the given percentile (default 95) so the + rapidly rising top tail doesn't dominate the y-axis. Reference lines whose y-value sits + above the visible range (e.g. the 99th-percentile threshold when ``cut_percentile=95``) + are skipped automatically. """ # Filter the data with the hue and hue_order @@ -1389,6 +1414,8 @@ def pen_parade( # Define the income period values period_factor = PERIOD_VALUES[period]["factor"] log_ticks = PERIOD_VALUES[period]["log_ticks"] + # Show cents only for daily figures; monthly/yearly values are large enough that decimals are noise. + dollar_decimals = 2 if period == "day" else 0 data[y] = data[y] * period_factor @@ -1401,6 +1428,20 @@ def pen_parade( else: data_year = data[data["year"] == year].reset_index(drop=True) + # Compute the y-value at cut_percentile (used to set the y-axis cap and to anchor + # the p99 annotation). Keep ALL x rows so the curve spans the full x range, and + # CLAMP y values above the cut to y_at_cut so the curve plateaus at the top rather + # than disappearing (or relying on axes clipping, which we keep disabled globally + # for Figma editing). + if cut_percentile < 100 and len(data_year) > 0: + cut_subset = data_year[data_year[x] <= cut_percentile] + y_at_cut = float(cut_subset[y].max()) if len(cut_subset) else None + if y_at_cut is not None: + data_year = data_year.copy() + data_year.loc[data_year[y] > y_at_cut, y] = y_at_cut + else: + y_at_cut = None + # Define world mean world_mean_year = ( df_main_indicators.loc[ @@ -1488,7 +1529,9 @@ def pen_parade( linestyle="--", linewidth=0.8, ) - reference_ticks.append((ipl, f"→ International Poverty Line\n${round(ipl, 2):.2f}")) + reference_ticks.append( + (ipl, f"→ International Poverty Line: ${ipl:.{dollar_decimals}f}") + ) # World mean plt.axhline( @@ -1497,7 +1540,9 @@ def pen_parade( linestyle="--", linewidth=0.8, ) - reference_ticks.append((world_mean_year, f"→ World mean\n${round(world_mean_year, 2):.2f}")) + reference_ticks.append( + (world_mean_year, f"→ World mean: ${world_mean_year:.{dollar_decimals}f}") + ) # World median plt.axhline( @@ -1506,11 +1551,13 @@ def pen_parade( linestyle="--", linewidth=0.8, ) - reference_ticks.append((world_median_year, f"→ World median\n${round(world_median_year, 2):.2f}")) + reference_ticks.append( + (world_median_year, f"→ World median: ${world_median_year:.{dollar_decimals}f}") + ) plt.text( x=0, y=world_median_year, - s=f"The poorest 50% live on less than ${round(world_median_year, 2):.2f} a {period}\n", + s=f"The poorest 50% live on less than ${world_median_year:.{dollar_decimals}f} a {period}\n", color="black", rotation=0, horizontalalignment="left", @@ -1555,19 +1602,68 @@ def pen_parade( linewidth=0.8, ) reference_ticks.append( - (world_90th_percentile, f"→ ${round(world_90th_percentile, 2):.2f}\n10% is richer") + ( + world_90th_percentile, + f"→ The richest 10% have an income of more than ${world_90th_percentile:.{dollar_decimals}f} per {period}", + ) ) - # 99th percentile of the world - plt.axhline( - y=world_99th_percentile, - color=sns.color_palette("deep")[3], - linestyle="--", - linewidth=0.8, - ) - reference_ticks.append( - (world_99th_percentile, f"→ ${round(world_99th_percentile, 2):.2f}\n1% is richer") + # 99th percentile of the world. + # If the chart was cut below percentile 99, the 99th threshold sits above the + # visible y range — draw the label above the cropped top of the chart, anchored + # at x = cut_percentile (the right edge of the visible plot), as in the reference. + p99_label = ( + f"↑ The richest 1% live on more than ${world_99th_percentile:.{dollar_decimals}f} per {period}" ) + if cut_percentile < 99: + import textwrap + + wrapped_p99 = textwrap.fill(p99_label, width=28) + # Anchor at (cut_percentile, ymax) — where the curve exits the top of the plot. + # va="bottom" places the label just above the axes top edge. + line_plot.annotate( + wrapped_p99, + xy=(cut_percentile, 1.0), + xycoords=("data", "axes fraction"), + xytext=(8, 6), + textcoords="offset points", + ha="left", + va="bottom", + fontsize=8, + linespacing=1.5, + annotation_clip=False, + ) + else: + plt.axhline( + y=world_99th_percentile, + color=sns.color_palette("deep")[3], + linestyle="--", + linewidth=0.8, + ) + reference_ticks.append((world_99th_percentile, p99_label.replace("↑", "→"))) + + # Country median reference lines (most-recent value at or before the plot year). + for country_name in ["Norway", "United States", "Sweden", "United Kingdom"]: + country_rows = df_main_indicators[ + (df_main_indicators["country"] == country_name) + & (df_main_indicators["year"] <= year) + & df_main_indicators["median"].notna() + ] + if country_rows.empty: + continue + country_median = country_rows.sort_values("year")["median"].iloc[-1] * period_factor + plt.axhline( + y=country_median, + color=sns.color_palette("deep")[3], + linestyle=":", + linewidth=0.8, + ) + reference_ticks.append( + ( + country_median, + f"→ ${country_median:.{dollar_decimals}f} per {period} — the median income in {country_name}", + ) + ) # Remove y-axis labels and ticks line_plot.set_ylabel("") @@ -1586,17 +1682,63 @@ def pen_parade( # Replace the default dollar-amount y-tick labels with the reference-line labels. # Falls back to the dollar formatter when there are no reference lines (add_lines=False). if reference_ticks: - yticks, yticklabels = zip(*sorted(reference_ticks)) - line_plot.set_yticks(list(yticks)) - line_plot.set_yticklabels(list(yticklabels), fontsize=8, linespacing=1.5) + import textwrap + + from matplotlib.transforms import offset_copy + + sorted_refs = sorted(reference_ticks) + yticks = [t[0] for t in sorted_refs] + # Single-line labels; wrap onto new lines when wider than the reserved right margin. + wrap_width = 28 # characters; tune with the right-margin adjust below + yticklabels = [textwrap.fill(t[1], width=wrap_width) for t in sorted_refs] + line_plot.set_yticks(yticks) + line_plot.set_yticklabels(yticklabels, fontsize=8, linespacing=1.5, va="center") + + # Reserve room on the right so long labels like "International Poverty Line" don't get clipped. + line_plot.get_figure().subplots_adjust(right=0.65) + + # Per-label vertical offsets (with va="center", default places the block centered on tick): + # - 1-line label: no offset needed (text is centered on tick). + # - n-line wrapped label: shift block DOWN by (n-1)*line_height/2 so the FIRST line sits on the tick. + # - When the tick above is too close (would overlap given label heights), drop this label entirely + # BELOW its tick by ~one label height so the two labels separate. + fig = line_plot.get_figure() + fig.canvas.draw() # force layout so transData picks up the final axis range + trans = line_plot.transData + pixel_ys = [trans.transform((0, y))[1] for y in yticks] + line_height_points = 8 * 1.5 # fontsize × linespacing + line_height_pixels = line_height_points * fig.dpi / 72.0 + + labels = line_plot.get_yticklabels() + line_counts = [text.count("\n") + 1 for text in yticklabels] + for i, label in enumerate(labels): + n = line_counts[i] + # Default: first line centered on the tick. + default_offset = -line_height_points * (n - 1) / 2 + # Pushed below: label sits entirely below its tick (first line just below). + pushed_offset = -line_height_points * (n + 1) / 2 + + min_gap_pixels = line_height_pixels * n + 4 + has_close_above = ( + i + 1 < len(pixel_ys) and (pixel_ys[i + 1] - pixel_ys[i]) < min_gap_pixels + ) + offset_y = pushed_offset if has_close_above else default_offset + label.set_transform( + offset_copy(label.get_transform(), fig=fig, y=offset_y, units="points") + ) else: line_plot.get_yaxis().set_major_formatter( plt.FuncFormatter(lambda x, _: f"${x:.0f} per {period}") ) - # Make the plot tighter, with the y axis closer to the plot and the x axis being shown between 0 and 100 + # The full distribution stays visible on the x-axis (0–100). The y-axis is clamped + # to the y-value at cut_percentile so the steeply-rising top tail doesn't dominate. line_plot.set_xlim(0, 100) - line_plot.set_ylim(0, line_plot.get_ylim()[1]) + if y_at_cut is not None: + line_plot.set_ylim(0, y_at_cut) + line_plot.set_autoscaley_on(False) + else: + line_plot.set_ylim(0, line_plot.get_ylim()[1]) # Move y axis to the right line_plot.yaxis.tick_right() From 60ebaf4caa518abff2c50dd243a96d325fe071ef Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 15:57:24 +0100 Subject: [PATCH 04/38] :wrench: pen_parade: default cut_percentile=100, opt-in per call Flip the default so pen_parade plots the full distribution unchanged unless the caller passes cut_percentile. The World/month example call sets cut_percentile=95 explicitly. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator/distribution_generator.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index b1fef497..c8f32414 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -349,6 +349,7 @@ def run() -> None: add_lines=True, period="month", survey_based=False, + cut_percentile=95, ) pen_parade( @@ -1370,7 +1371,7 @@ def pen_parade( preferred_welfare_type: Literal["income", "consumption", None] = None, width: int = WIDTH_PEN, height: int = HEIGHT_PEN, - cut_percentile: float = 95, + cut_percentile: float = 100, ) -> None: """ Plot Pen parades (percentiles vs. income) with seaborn, with multiple options for customization. From 22190b4c85b934c20c713f093c3dd6429e93e627 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 16:02:01 +0100 Subject: [PATCH 05/38] :sparkles: enhance pen parade: anchor curves at origin and extend plateau to x=100 --- .../distribution_generator.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index c8f32414..b3f63aa6 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1429,17 +1429,30 @@ def pen_parade( else: data_year = data[data["year"] == year].reset_index(drop=True) + # Anchor each per-hue line at (x=0, y=0) so the curve starts at the origin instead + # of at percentile=1. + if len(data_year) > 0: + zero_rows = data_year.drop_duplicates(subset=[hue]).copy() + zero_rows[x] = 0 + zero_rows[y] = 0 + data_year = pd.concat([zero_rows, data_year], ignore_index=True).reset_index(drop=True) + # Compute the y-value at cut_percentile (used to set the y-axis cap and to anchor # the p99 annotation). Keep ALL x rows so the curve spans the full x range, and # CLAMP y values above the cut to y_at_cut so the curve plateaus at the top rather # than disappearing (or relying on axes clipping, which we keep disabled globally - # for Figma editing). + # for Figma editing). Also extend the plateau to x=100 so the cap line reaches the + # right edge of the chart, even when the source data tops out at percentile 99. if cut_percentile < 100 and len(data_year) > 0: cut_subset = data_year[data_year[x] <= cut_percentile] y_at_cut = float(cut_subset[y].max()) if len(cut_subset) else None if y_at_cut is not None: data_year = data_year.copy() data_year.loc[data_year[y] > y_at_cut, y] = y_at_cut + plateau_end = data_year.drop_duplicates(subset=[hue], keep="last").copy() + plateau_end[x] = 100 + plateau_end[y] = y_at_cut + data_year = pd.concat([data_year, plateau_end], ignore_index=True).reset_index(drop=True) else: y_at_cut = None From 6bbea7192e14a89f4d3a0458d508fc1e052569f1 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 16:03:30 +0100 Subject: [PATCH 06/38] :sparkles: pen parade: adjust annotation positioning for clarity --- .../distribution_generator/distribution_generator.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index b3f63aa6..0620d102 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1633,13 +1633,14 @@ def pen_parade( import textwrap wrapped_p99 = textwrap.fill(p99_label, width=28) - # Anchor at (cut_percentile, ymax) — where the curve exits the top of the plot. - # va="bottom" places the label just above the axes top edge. + # Anchor at the top-right of the axes so the label sits in the same + # right-margin column as the other y-tick labels, just above the topmost + # tick. ha="left" + a small +x offset mirror the default tick-label pad. line_plot.annotate( wrapped_p99, - xy=(cut_percentile, 1.0), - xycoords=("data", "axes fraction"), - xytext=(8, 6), + xy=(1.0, 1.0), + xycoords="axes fraction", + xytext=(4, 4), textcoords="offset points", ha="left", va="bottom", From 4afe979ba1e585b0c3a74316d5322e64ef89ab3d Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 16:10:12 +0100 Subject: [PATCH 07/38] :sparkles: pen_parade: anchor at p0=0, plateau to p100, top fade - Prepend a (x=0, y=0) row per hue group so each curve starts at the origin instead of at percentile 1. - When cut_percentile is set, extend the plateau to p100 by appending a (x=100, y=y_at_cut) anchor after the y-clamp. - Add a vertical white-to-transparent gradient band across the top of the chart (opaque at ~0.85*y_at_cut, clear at y_at_cut) so the line and fill dissolve into white instead of ending hard. - Move the p99 annotation to the right-margin column at the top-right axes corner so it aligns with the other y-tick labels. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 0620d102..a98ac665 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1755,6 +1755,22 @@ def pen_parade( else: line_plot.set_ylim(0, line_plot.get_ylim()[1]) + # Fade the top band of the chart so the line/fill near the cap dissolve into white + # without a hard edge — clearer (transparent) at the very top, opaque white below, + # spanning the full x-range so the steep rising portion of the curve is covered too. + if y_at_cut is not None: + fade = np.ones((256, 1, 4)) + fade[:, :, :3] = 1.0 # white RGB + fade[:, :, 3] = np.linspace(1, 0, 256).reshape(-1, 1) # opaque bottom → clear top + fade_y_bottom = y_at_cut * 0.85 + line_plot.imshow( + fade, + extent=[0, 100, fade_y_bottom, y_at_cut], + aspect="auto", + zorder=3, + interpolation="bilinear", + ) + # Move y axis to the right line_plot.yaxis.tick_right() From 3961b918501dabc37ef929abd7f09d0f1f048a2a Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 16:24:16 +0100 Subject: [PATCH 08/38] :wrench: pen_parade: piecewise top fade covering plateau line - Make the fade piecewise: opaque white from the bottom of the band up through the plateau line at y_at_cut, fading to transparent only above it. This fully covers the faint plateau line that was peeking through the old linear gradient. - Stop the gradient at x=99.75 so it doesn't bleed over the right-hand y-axis line at x=100. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index a98ac665..d689b6dc 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1755,17 +1755,26 @@ def pen_parade( else: line_plot.set_ylim(0, line_plot.get_ylim()[1]) - # Fade the top band of the chart so the line/fill near the cap dissolve into white - # without a hard edge — clearer (transparent) at the very top, opaque white below, - # spanning the full x-range so the steep rising portion of the curve is covered too. + # Fade the top band of the chart: clear at the very top, opaque white everywhere + # at and below the plateau line. The opaque region covers the plateau line entirely + # (so we don't see the faint top edge), while above the plateau the band fades + # smoothly into the chart background. if y_at_cut is not None: - fade = np.ones((256, 1, 4)) - fade[:, :, :3] = 1.0 # white RGB - fade[:, :, 3] = np.linspace(1, 0, 256).reshape(-1, 1) # opaque bottom → clear top fade_y_bottom = y_at_cut * 0.85 + fade_y_top = y_at_cut * 1.10 + plateau_frac = (y_at_cut - fade_y_bottom) / (fade_y_top - fade_y_bottom) + n = 256 + plateau_idx = int(n * plateau_frac) + alpha = np.ones(n) + # The portion of the band above the plateau fades from opaque (at plateau) + # to transparent (at the very top). + alpha[plateau_idx:] = np.linspace(1, 0, n - plateau_idx) + fade = np.ones((n, 1, 4)) + fade[:, :, :3] = 1.0 # white RGB + fade[:, :, 3] = alpha.reshape(-1, 1) line_plot.imshow( fade, - extent=[0, 100, fade_y_bottom, y_at_cut], + extent=[0, 99.75, fade_y_bottom, fade_y_top], aspect="auto", zorder=3, interpolation="bilinear", From 4f104fce4e3a70bcee22c84e74e269c3eaee6a0d Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 16:27:59 +0100 Subject: [PATCH 09/38] :wrench: pen_parade: extend y-axis above cut, thicken curve - When cut_percentile is in effect, draw the right-hand y-axis line with an explicit plot() up to y_at_cut * 1.10 (with clip_on=False) so it reaches slightly above the cap, hinting that data continues above. - Bump the curve linewidth from the default to 2.5 for better presence. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d689b6dc..abef3419 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1512,6 +1512,7 @@ def pen_parade( hue=hue, hue_order=hue_order, legend=legend, + linewidth=2.5, ) if fill: @@ -1785,7 +1786,18 @@ def pen_parade( # Draw a line for each axis line_plot.axhline(y=0, color="black", linewidth=0.5) - line_plot.axvline(x=100, color="black", linewidth=0.5) + # Right-hand y-axis line. When the chart is cut, extend it slightly above the cap + # (clip_on=False), visually hinting that the data continues above the visible range. + if y_at_cut is not None: + line_plot.plot( + [100, 100], + [0, y_at_cut * 1.10], + color="black", + linewidth=0.5, + clip_on=False, + ) + else: + line_plot.axvline(x=100, color="black", linewidth=0.5) fig = line_plot.get_figure() From 43be882c35e452dd59b9e24ea4f7dd19bd0abe98 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 16:43:32 +0100 Subject: [PATCH 10/38] :wrench: pen_parade: left arrows, $900/$500 lines, slate reference color MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Flip the right-margin arrows from → to ← so they point into the chart. - Drop the World mean reference and add two new reference lines at the equivalent of \$900/month and \$500/month, defined in monthly terms and rescaled by period_factor / month_factor so the same real-world amounts shift correctly between day/month/year periods. - Centralize the reference-line color in a REFERENCE_LINE_COLOR constant (slate \#6c7a89) so all axhlines pick it up. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 49 +++++++++++-------- 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index abef3419..56b85513 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -27,6 +27,9 @@ WIDTH_PEN = 1000 HEIGHT_PEN = 1250 +# Color used for reference lines (IPL, World median, $900/$500 lines, country medians, etc.) +REFERENCE_LINE_COLOR = "#6c7a89" + # Define gridsize for when I need higher resolution GRIDSIZE_HIGHER_RESOLUTION = 1000 @@ -1540,34 +1543,40 @@ def pen_parade( # International poverty line plt.axhline( y=ipl, - color=sns.color_palette("deep")[3], + color=REFERENCE_LINE_COLOR, linestyle="--", linewidth=0.8, ) reference_ticks.append( - (ipl, f"→ International Poverty Line: ${ipl:.{dollar_decimals}f}") + (ipl, f"← International Poverty Line: ${ipl:.{dollar_decimals}f}") ) - # World mean - plt.axhline( - y=world_mean_year, - color=sns.color_palette("deep")[3], - linestyle="--", - linewidth=0.8, - ) - reference_ticks.append( - (world_mean_year, f"→ World mean: ${world_mean_year:.{dollar_decimals}f}") - ) + # Reference lines at the equivalent of $900/month and $500/month, in the + # chart's current period units. Defined in monthly terms then rescaled by + # period_factor / month_factor so the same real-world amounts shift correctly + # when the chart switches between day / month / year periods. + month_factor = PERIOD_VALUES["month"]["factor"] + for monthly_value in (900, 500): + line_y = monthly_value * period_factor / month_factor + plt.axhline( + y=line_y, + color=REFERENCE_LINE_COLOR, + linestyle="--", + linewidth=0.8, + ) + reference_ticks.append( + (line_y, f"← ${line_y:.{dollar_decimals}f} per {period}") + ) # World median plt.axhline( y=world_median_year, - color=sns.color_palette("deep")[3], + color=REFERENCE_LINE_COLOR, linestyle="--", linewidth=0.8, ) reference_ticks.append( - (world_median_year, f"→ World median: ${world_median_year:.{dollar_decimals}f}") + (world_median_year, f"← World median: ${world_median_year:.{dollar_decimals}f}") ) plt.text( x=0, @@ -1583,7 +1592,7 @@ def pen_parade( # High-income poverty line — narrative stays in the plot on the left. plt.axhline( y=POVERTY_LINE_HIGH_INCOME * period_factor, - color=sns.color_palette("deep")[3], + color=REFERENCE_LINE_COLOR, linestyle="-", linewidth=1, ) @@ -1612,14 +1621,14 @@ def pen_parade( # 90th percentile of the world plt.axhline( y=world_90th_percentile, - color=sns.color_palette("deep")[3], + color=REFERENCE_LINE_COLOR, linestyle="--", linewidth=0.8, ) reference_ticks.append( ( world_90th_percentile, - f"→ The richest 10% have an income of more than ${world_90th_percentile:.{dollar_decimals}f} per {period}", + f"← The richest 10% have an income of more than ${world_90th_percentile:.{dollar_decimals}f} per {period}", ) ) @@ -1652,7 +1661,7 @@ def pen_parade( else: plt.axhline( y=world_99th_percentile, - color=sns.color_palette("deep")[3], + color=REFERENCE_LINE_COLOR, linestyle="--", linewidth=0.8, ) @@ -1670,14 +1679,14 @@ def pen_parade( country_median = country_rows.sort_values("year")["median"].iloc[-1] * period_factor plt.axhline( y=country_median, - color=sns.color_palette("deep")[3], + color=REFERENCE_LINE_COLOR, linestyle=":", linewidth=0.8, ) reference_ticks.append( ( country_median, - f"→ ${country_median:.{dollar_decimals}f} per {period} — the median income in {country_name}", + f"← ${country_median:.{dollar_decimals}f} per {period} — the median income in {country_name}", ) ) From e878128e4efb9c0d5908bccb0a083f3f9d6d6507 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 17:16:15 +0100 Subject: [PATCH 11/38] :sparkles: pen_parade: merge close-together reference labels, restyle copy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Merge country-median pairs (currently Sweden+UK) whose medians are within 5% into a single averaged line; assert if a configured pair exceeds the tolerance so the chart author notices the divergence. - If the merged country median is also within 5% of the world p90, fold both into one label re-using the existing p90 axhline, no duplicate line. Combined wording: "median income in {countries}, and the income above which the richest 10% of the world live". - Display-name map renders "United States" → "the USA" and "United Kingdom" → "the UK" in the labels. - Per-label anchor overrides position "median income in Sweden..." above its tick and "richest 10%..." below (no-op when both fragments are merged into one label). - All reference lines dotted (linestyle=":"), drop the old high-income poverty-line block and "poorest 50%" narrative. - Reword the IPL and World median labels to the same shape as the others: "← $X per {period}" / "← $X per {period} — the global median income". - $900/month and $500/month reference lines defined in monthly terms and rescaled by period_factor / month_factor. - Pen parade now 1000x1000 (square), wider right margin (right=0.55), wrap_width=36, curve linewidth=2.5, slate-blue reference color via a central REFERENCE_LINE_COLOR constant. - Fade band on the top tail of the chart is piecewise (opaque through the plateau line, fades only above), with y_at_fade_floor at y_at_cut * 0.88 by default. Right-hand y-axis line extends to y_at_cut * 1.10 with clip_on=False, hinting at data continuing above. - World pen parade call passes cut_percentile=95. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 203 +++++++++++------- 1 file changed, 131 insertions(+), 72 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 56b85513..cce192ff 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -23,9 +23,9 @@ WIDTH = 1500 HEIGHT = 750 -# For Pen Parade — 1:1.25 (taller than wide) +# For Pen Parade — roughly 1:1 WIDTH_PEN = 1000 -HEIGHT_PEN = 1250 +HEIGHT_PEN = 1000 # Color used for reference lines (IPL, World median, $900/$500 lines, country medians, etc.) REFERENCE_LINE_COLOR = "#6c7a89" @@ -757,7 +757,7 @@ def distributional_plots( plt.axvline( x=ipl, color="lightgrey", - linestyle="--", + linestyle=":", linewidth=0.8, ) plt.text( @@ -782,7 +782,7 @@ def distributional_plots( plt.axvline( x=world_mean_year, color="lightgrey", - linestyle="--", + linestyle=":", linewidth=0.8, ) plt.text( @@ -807,7 +807,7 @@ def distributional_plots( plt.axvline( x=world_median_year, color="lightgrey", - linestyle="--", + linestyle=":", linewidth=0.8, ) plt.text( @@ -1118,7 +1118,7 @@ def distributional_plots_per_row( ax.axvline( x=ipl, color="lightgrey", - linestyle="--", + linestyle=":", linewidth=0.8, ) @@ -1127,7 +1127,7 @@ def distributional_plots_per_row( ax.axvline( x=world_mean_year, color="lightgrey", - linestyle="--", + linestyle=":", linewidth=0.8, ) @@ -1136,7 +1136,7 @@ def distributional_plots_per_row( ax.axvline( x=world_median_year, color="lightgrey", - linestyle="--", + linestyle=":", linewidth=0.8, ) @@ -1449,6 +1449,8 @@ def pen_parade( if cut_percentile < 100 and len(data_year) > 0: cut_subset = data_year[data_year[x] <= cut_percentile] y_at_cut = float(cut_subset[y].max()) if len(cut_subset) else None + # Fade band runs from 88% of the cap up to the cap. + y_at_fade_floor = y_at_cut * 0.88 if y_at_cut is not None else None if y_at_cut is not None: data_year = data_year.copy() data_year.loc[data_year[y] > y_at_cut, y] = y_at_cut @@ -1458,6 +1460,7 @@ def pen_parade( data_year = pd.concat([data_year, plateau_end], ignore_index=True).reset_index(drop=True) else: y_at_cut = None + y_at_fade_floor = None # Define world mean world_mean_year = ( @@ -1479,13 +1482,6 @@ def pen_parade( * period_factor ) - # Define the % of people below the high-income country poverty line - world_share_below_high_income_line = df_main_indicators.loc[ - (df_main_indicators["country"] == "World") - & (df_main_indicators["year"] == year), - f"headcount_ratio_{POVERTY_LINE_HIGH_INCOME*100:.0f}", - ].values[0] - # Define the 90th percentile of the world world_90th_percentile = ( df_main_indicators.loc[ @@ -1544,11 +1540,11 @@ def pen_parade( plt.axhline( y=ipl, color=REFERENCE_LINE_COLOR, - linestyle="--", + linestyle=":", linewidth=0.8, ) reference_ticks.append( - (ipl, f"← International Poverty Line: ${ipl:.{dollar_decimals}f}") + (ipl, f"← ${ipl:.{dollar_decimals}f} per {period}") ) # Reference lines at the equivalent of $900/month and $500/month, in the @@ -1561,7 +1557,7 @@ def pen_parade( plt.axhline( y=line_y, color=REFERENCE_LINE_COLOR, - linestyle="--", + linestyle=":", linewidth=0.8, ) reference_ticks.append( @@ -1572,57 +1568,17 @@ def pen_parade( plt.axhline( y=world_median_year, color=REFERENCE_LINE_COLOR, - linestyle="--", + linestyle=":", linewidth=0.8, ) reference_ticks.append( - (world_median_year, f"← World median: ${world_median_year:.{dollar_decimals}f}") + (world_median_year, f"← ${world_median_year:.{dollar_decimals}f} per {period} — the global median income") ) - plt.text( - x=0, - y=world_median_year, - s=f"The poorest 50% live on less than ${world_median_year:.{dollar_decimals}f} a {period}\n", - color="black", - rotation=0, - horizontalalignment="left", - fontsize=9, - linespacing=0.5, - ) - - # High-income poverty line — narrative stays in the plot on the left. - plt.axhline( - y=POVERTY_LINE_HIGH_INCOME * period_factor, - color=REFERENCE_LINE_COLOR, - linestyle="-", - linewidth=1, - ) - plt.text( - x=0, - y=POVERTY_LINE_HIGH_INCOME * period_factor, - s=f"${round(POVERTY_LINE_HIGH_INCOME * period_factor, 2):.0f} corresponds to the poverty line of a high-income country\n", - color="black", - rotation=0, - horizontalalignment="left", - fontsize=9, - linespacing=0.5, - ) - plt.text( - x=0, - y=POVERTY_LINE_HIGH_INCOME * period_factor, - s=f"\nGlobally, {world_share_below_high_income_line / 100:.1%} live on less than ${round(POVERTY_LINE_HIGH_INCOME * period_factor, 2):.0f} a {period}", - color="black", - rotation=0, - horizontalalignment="left", - verticalalignment="top", - fontsize=8, - linespacing=0.5, - ) - # 90th percentile of the world plt.axhline( y=world_90th_percentile, color=REFERENCE_LINE_COLOR, - linestyle="--", + linestyle=":", linewidth=0.8, ) reference_ticks.append( @@ -1662,12 +1618,27 @@ def pen_parade( plt.axhline( y=world_99th_percentile, color=REFERENCE_LINE_COLOR, - linestyle="--", + linestyle=":", linewidth=0.8, ) reference_ticks.append((world_99th_percentile, p99_label.replace("↑", "→"))) # Country median reference lines (most-recent value at or before the plot year). + # Pairs in COUNTRY_MEDIAN_MERGE_PAIRS that fall within MEDIAN_MERGE_TOLERANCE of + # each other are averaged into a single line; otherwise we assert so the chart + # author notices the divergence and decides how to lay them out. + COUNTRY_MEDIAN_MERGE_PAIRS = [("Sweden", "United Kingdom")] + MEDIAN_MERGE_TOLERANCE = 0.05 # 5% + # Display names: PIP's full country names → the shorter forms we want shown + # in the labels. Countries not listed fall back to their PIP name. + COUNTRY_DISPLAY_NAMES = { + "United States": "the USA", + "United Kingdom": "the UK", + } + + def display_name(country: str) -> str: + return COUNTRY_DISPLAY_NAMES.get(country, country) + country_medians_lookup = {} for country_name in ["Norway", "United States", "Sweden", "United Kingdom"]: country_rows = df_main_indicators[ (df_main_indicators["country"] == country_name) @@ -1676,7 +1647,29 @@ def pen_parade( ] if country_rows.empty: continue - country_median = country_rows.sort_values("year")["median"].iloc[-1] * period_factor + country_medians_lookup[country_name] = ( + country_rows.sort_values("year")["median"].iloc[-1] * period_factor + ) + + merged_country_labels = set() + merged_groups: list[tuple[float, list[str]]] = [] + for a, b in COUNTRY_MEDIAN_MERGE_PAIRS: + if a not in country_medians_lookup or b not in country_medians_lookup: + continue + med_a = country_medians_lookup[a] + med_b = country_medians_lookup[b] + relative_diff = abs(med_a - med_b) / max(med_a, med_b) + assert relative_diff <= MEDIAN_MERGE_TOLERANCE, ( + f"Country medians for {a} (${med_a:.2f}) and {b} (${med_b:.2f}) differ by " + f"{relative_diff:.1%}, exceeding the {MEDIAN_MERGE_TOLERANCE:.0%} merge " + f"tolerance. Adjust COUNTRY_MEDIAN_MERGE_PAIRS or lay them out separately." + ) + merged_groups.append(((med_a + med_b) / 2, [a, b])) + merged_country_labels.update({a, b}) + + for country_name, country_median in country_medians_lookup.items(): + if country_name in merged_country_labels: + continue plt.axhline( y=country_median, color=REFERENCE_LINE_COLOR, @@ -1686,7 +1679,43 @@ def pen_parade( reference_ticks.append( ( country_median, - f"← ${country_median:.{dollar_decimals}f} per {period} — the median income in {country_name}", + f"← ${country_median:.{dollar_decimals}f} per {period} — the median income in {display_name(country_name)}", + ) + ) + + for group_median, group_countries in merged_groups: + group_label = " and ".join(display_name(c) for c in group_countries) + # If this merged country median is also within MEDIAN_MERGE_TOLERANCE of the + # world's 90th percentile, combine the two into a single reference label + # (and replace the existing p90 tick instead of adding a duplicate). + p90_diff = abs(group_median - world_90th_percentile) / max( + group_median, world_90th_percentile + ) + if p90_diff <= MEDIAN_MERGE_TOLERANCE: + # Reuse the existing p90 axhline (already drawn) — don't add another at + # the merged y, otherwise two near-identical lines would overlap. + combined_value = world_90th_percentile + combined_label = ( + f"← ${combined_value:.{dollar_decimals}f} per {period} — " + f"the median income in {group_label}, and the income above " + f"which the richest 10% of the world live" + ) + # Replace the existing p90 tick (matched by "richest 10%" fragment). + for idx, (_, label_text) in enumerate(reference_ticks): + if "richest 10%" in label_text: + reference_ticks[idx] = (combined_value, combined_label) + break + continue + plt.axhline( + y=group_median, + color=REFERENCE_LINE_COLOR, + linestyle=":", + linewidth=0.8, + ) + reference_ticks.append( + ( + group_median, + f"← ${group_median:.{dollar_decimals}f} per {period} — the median income in {group_label}", ) ) @@ -1714,13 +1743,13 @@ def pen_parade( sorted_refs = sorted(reference_ticks) yticks = [t[0] for t in sorted_refs] # Single-line labels; wrap onto new lines when wider than the reserved right margin. - wrap_width = 28 # characters; tune with the right-margin adjust below + wrap_width = 36 # characters; tune with the right-margin adjust below yticklabels = [textwrap.fill(t[1], width=wrap_width) for t in sorted_refs] line_plot.set_yticks(yticks) line_plot.set_yticklabels(yticklabels, fontsize=8, linespacing=1.5, va="center") # Reserve room on the right so long labels like "International Poverty Line" don't get clipped. - line_plot.get_figure().subplots_adjust(right=0.65) + line_plot.get_figure().subplots_adjust(right=0.55) # Per-label vertical offsets (with va="center", default places the block centered on tick): # - 1-line label: no offset needed (text is centered on tick). @@ -1736,18 +1765,48 @@ def pen_parade( labels = line_plot.get_yticklabels() line_counts = [text.count("\n") + 1 for text in yticklabels] + # Anchor overrides for specific labels that sit too close to their neighbour + # for the automatic collision logic to look right. "above" lifts the label so + # its bottom sits at the tick; "below" drops it so its top sits at the tick. + # The fragment is matched against the (wrapped) label text. + anchor_overrides = { + "median income in Sweden": "above", + "richest 10%": "below", + } + + def matched_anchor(text: str) -> str | None: + # If both the country-median and the p90 phrasings appear, the labels were + # already merged into one combined tick — keep it centered, not above/below. + if "median income in Sweden" in text and "richest 10%" in text: + return None + for fragment, position in anchor_overrides.items(): + if fragment in text: + return position + return None + for i, label in enumerate(labels): n = line_counts[i] + text = yticklabels[i] # Default: first line centered on the tick. default_offset = -line_height_points * (n - 1) / 2 # Pushed below: label sits entirely below its tick (first line just below). pushed_offset = -line_height_points * (n + 1) / 2 - min_gap_pixels = line_height_pixels * n + 4 - has_close_above = ( - i + 1 < len(pixel_ys) and (pixel_ys[i + 1] - pixel_ys[i]) < min_gap_pixels - ) - offset_y = pushed_offset if has_close_above else default_offset + override = matched_anchor(text) + if override == "above": + # bottom of the label block sits at the tick → label extends upward + offset_y = line_height_points * (n - 0.5) + elif override == "below": + # top of the label block sits at the tick → label extends downward + offset_y = -line_height_points * (n + 0.5) + else: + min_gap_pixels = line_height_pixels * n + 4 + has_close_above = ( + i + 1 < len(pixel_ys) + and (pixel_ys[i + 1] - pixel_ys[i]) < min_gap_pixels + ) + offset_y = pushed_offset if has_close_above else default_offset + label.set_transform( offset_copy(label.get_transform(), fig=fig, y=offset_y, units="points") ) @@ -1770,7 +1829,7 @@ def pen_parade( # (so we don't see the faint top edge), while above the plateau the band fades # smoothly into the chart background. if y_at_cut is not None: - fade_y_bottom = y_at_cut * 0.85 + fade_y_bottom = y_at_fade_floor if y_at_fade_floor is not None else y_at_cut * 0.85 fade_y_top = y_at_cut * 1.10 plateau_frac = (y_at_cut - fade_y_bottom) / (fade_y_top - fade_y_bottom) n = 256 From 53d7d25816167dd58b70a211fc796ca2090f3dd9 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 17:36:06 +0100 Subject: [PATCH 12/38] :wrench: pen_parade: render right-margin labels via ax.annotate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The previous setup positioned the labels via tick label offsets, but matplotlib's tick-label renderer ignores transform offsets so the per-line-count vertical nudge for multi-line wrapped labels never actually applied (the ← arrow was misaligned with the tick). Hide the default tick labels (set_yticklabels with empty strings) and place each label manually with ax.annotate, using xytext in offset points so the per-n offset is honored. Default labels: va="center" with offset -(n-1)*line_height/2 so the first line lines up with the tick for both single- and multi-line wrapped labels. The above/below overrides (Sweden+UK, richest 10%) use va="bottom" / va="top" with no offset. Collision detection is disabled for now. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 66 +++++++++---------- 1 file changed, 32 insertions(+), 34 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index cce192ff..d7ed9777 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1738,15 +1738,15 @@ def display_name(country: str) -> str: if reference_ticks: import textwrap - from matplotlib.transforms import offset_copy - sorted_refs = sorted(reference_ticks) yticks = [t[0] for t in sorted_refs] - # Single-line labels; wrap onto new lines when wider than the reserved right margin. wrap_width = 36 # characters; tune with the right-margin adjust below yticklabels = [textwrap.fill(t[1], width=wrap_width) for t in sorted_refs] line_plot.set_yticks(yticks) - line_plot.set_yticklabels(yticklabels, fontsize=8, linespacing=1.5, va="center") + # Hide the default tick labels; we'll place them manually below via annotate so + # we can actually apply a vertical offset (matplotlib's tick-label renderer + # ignores the offset_copy transform we'd otherwise use). + line_plot.set_yticklabels([""] * len(yticks)) # Reserve room on the right so long labels like "International Poverty Line" don't get clipped. line_plot.get_figure().subplots_adjust(right=0.55) @@ -1756,19 +1756,10 @@ def display_name(country: str) -> str: # - n-line wrapped label: shift block DOWN by (n-1)*line_height/2 so the FIRST line sits on the tick. # - When the tick above is too close (would overlap given label heights), drop this label entirely # BELOW its tick by ~one label height so the two labels separate. - fig = line_plot.get_figure() - fig.canvas.draw() # force layout so transData picks up the final axis range - trans = line_plot.transData - pixel_ys = [trans.transform((0, y))[1] for y in yticks] line_height_points = 8 * 1.5 # fontsize × linespacing - line_height_pixels = line_height_points * fig.dpi / 72.0 - - labels = line_plot.get_yticklabels() - line_counts = [text.count("\n") + 1 for text in yticklabels] # Anchor overrides for specific labels that sit too close to their neighbour # for the automatic collision logic to look right. "above" lifts the label so # its bottom sits at the tick; "below" drops it so its top sits at the tick. - # The fragment is matched against the (wrapped) label text. anchor_overrides = { "median income in Sweden": "above", "richest 10%": "below", @@ -1784,31 +1775,38 @@ def matched_anchor(text: str) -> str | None: return position return None - for i, label in enumerate(labels): - n = line_counts[i] - text = yticklabels[i] - # Default: first line centered on the tick. - default_offset = -line_height_points * (n - 1) / 2 - # Pushed below: label sits entirely below its tick (first line just below). - pushed_offset = -line_height_points * (n + 1) / 2 - + # Place each label manually as an annotation in the right-margin column. This + # gives us actual vertical offset control (matplotlib's tick-label renderer + # ignores transform offsets, but annotate's textcoords="offset points" works). + tick_pad_points = 4 # mirrors matplotlib's default tick-label pad + for tick_y, text in zip(yticks, yticklabels): + n = text.count("\n") + 1 override = matched_anchor(text) if override == "above": - # bottom of the label block sits at the tick → label extends upward - offset_y = line_height_points * (n - 0.5) + # bottom of the label block sits at the tick → text extends upward + offset_y = 0 + va = "bottom" elif override == "below": - # top of the label block sits at the tick → label extends downward - offset_y = -line_height_points * (n + 0.5) + # top of the label block sits at the tick → text extends downward + offset_y = 0 + va = "top" else: - min_gap_pixels = line_height_pixels * n + 4 - has_close_above = ( - i + 1 < len(pixel_ys) - and (pixel_ys[i + 1] - pixel_ys[i]) < min_gap_pixels - ) - offset_y = pushed_offset if has_close_above else default_offset - - label.set_transform( - offset_copy(label.get_transform(), fig=fig, y=offset_y, units="points") + # First line centered on the tick. With va="center", the bbox center + # is at tick + offset_y; shifting down by (n-1)*line_height/2 puts the + # first line at the tick. For n=1 the offset is zero. + offset_y = -line_height_points * (n - 1) / 2 + va = "center" + line_plot.annotate( + text, + xy=(1.0, tick_y), + xycoords=("axes fraction", "data"), + xytext=(tick_pad_points, offset_y), + textcoords="offset points", + ha="left", + va=va, + fontsize=8, + linespacing=1.5, + annotation_clip=False, ) else: line_plot.get_yaxis().set_major_formatter( From 22d0b4e0314be605a51f9b5e3f2ffde26ac7a7aa Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 17:58:34 +0100 Subject: [PATCH 13/38] :sparkles: pen_parade: red square brackets above key reference lines Add a small red square bracket above IPL, the global median, and the high-income poverty line, spanning from x=0 out to where the curve crosses that y value. Marks the share of the world earning less than each threshold. Bracket color matches the deep-red from sns.color_palette("deep")[3]; height ~1.2% of the visible y-range. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d7ed9777..86788e18 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1719,6 +1719,33 @@ def display_name(country: str) -> str: ) ) + # Red square brackets ([) ABOVE selected reference lines, spanning from x=0 + # out to where the curve crosses that y value — a simple bracket with vertical + # end-caps and a flat top, marking the share of the world earning less than + # each threshold. + brace_values = [ + ipl, + world_median_year, + POVERTY_LINE_HIGH_INCOME * period_factor, + ] + y_range = y_at_cut if y_at_cut is not None else line_plot.get_ylim()[1] + brace_height_data = y_range * 0.012 # height of the bracket + for brace_y in brace_values: + above = data_year[data_year[y] >= brace_y] + if above.empty: + continue + x_brace_end = float(above[x].min()) + if x_brace_end <= 1: + continue + y_low = brace_y + y_high = brace_y + brace_height_data + bx = [0.0, 0.0, x_brace_end, x_brace_end] + by = [y_low, y_high, y_high, y_low] + line_plot.plot( + bx, by, color=sns.color_palette("deep")[3], linewidth=1.5, + clip_on=False, solid_capstyle="butt", solid_joinstyle="miter", + ) + # Remove y-axis labels and ticks line_plot.set_ylabel("") line_plot.yaxis.set_label_position("right") From 52ac02662beb5ac253263291df2b975207e13b11 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 18:04:14 +0100 Subject: [PATCH 14/38] :wrench: pen_parade: clip reference lines to the filled curve area MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Introduce an axhline_over_curve helper that draws the dotted reference line only from where the curve crosses that y value out to the right edge (xmin = x_crossing / 100 in axes fraction). Apply it to all six reference lines (IPL, \$900, \$500, World median, p90, p99, country medians, merged Sweden+UK groups). The white space above the curve — where the red square brackets live — now stays clean of dotted lines. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 66 +++++++------------ 1 file changed, 24 insertions(+), 42 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 86788e18..d9ca36fa 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1536,13 +1536,25 @@ def pen_parade( reference_ticks: list[tuple[float, str]] = [] if add_lines: + def axhline_over_curve(y_value): + """Dotted reference line at y_value, but only over the filled curve + area (from where the curve crosses y_value to the right edge), so the + line doesn't clutter the white space where the brackets live.""" + above_y = data_year[data_year[y] >= y_value] + if above_y.empty: + xmin_frac = 0.0 + else: + xmin_frac = float(above_y[x].min()) / 100.0 + plt.axhline( + y=y_value, + xmin=xmin_frac, + color=REFERENCE_LINE_COLOR, + linestyle=":", + linewidth=0.8, + ) + # International poverty line - plt.axhline( - y=ipl, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(ipl) reference_ticks.append( (ipl, f"← ${ipl:.{dollar_decimals}f} per {period}") ) @@ -1554,33 +1566,18 @@ def pen_parade( month_factor = PERIOD_VALUES["month"]["factor"] for monthly_value in (900, 500): line_y = monthly_value * period_factor / month_factor - plt.axhline( - y=line_y, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(line_y) reference_ticks.append( (line_y, f"← ${line_y:.{dollar_decimals}f} per {period}") ) # World median - plt.axhline( - y=world_median_year, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(world_median_year) reference_ticks.append( (world_median_year, f"← ${world_median_year:.{dollar_decimals}f} per {period} — the global median income") ) # 90th percentile of the world - plt.axhline( - y=world_90th_percentile, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(world_90th_percentile) reference_ticks.append( ( world_90th_percentile, @@ -1615,12 +1612,7 @@ def pen_parade( annotation_clip=False, ) else: - plt.axhline( - y=world_99th_percentile, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(world_99th_percentile) reference_ticks.append((world_99th_percentile, p99_label.replace("↑", "→"))) # Country median reference lines (most-recent value at or before the plot year). @@ -1670,12 +1662,7 @@ def display_name(country: str) -> str: for country_name, country_median in country_medians_lookup.items(): if country_name in merged_country_labels: continue - plt.axhline( - y=country_median, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(country_median) reference_ticks.append( ( country_median, @@ -1706,12 +1693,7 @@ def display_name(country: str) -> str: reference_ticks[idx] = (combined_value, combined_label) break continue - plt.axhline( - y=group_median, - color=REFERENCE_LINE_COLOR, - linestyle=":", - linewidth=0.8, - ) + axhline_over_curve(group_median) reference_ticks.append( ( group_median, From 0c4f5fe8d7bb226354d5865828352fb3809388c4 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 18:09:20 +0100 Subject: [PATCH 15/38] :wrench: refactor: standardize usage of PPP_VERSION and clean up formatting --- .../distribution_generator.py | 112 +++++++++++------- 1 file changed, 71 insertions(+), 41 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d9ca36fa..480ef397 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -13,12 +13,15 @@ # Define International Poverty Line INTERNATIONAL_POVERTY_LINE = 3 -# Define latest year -LATEST_YEAR = 2025 - # Define poverty line for high-income countries POVERTY_LINE_HIGH_INCOME = 30 +# PIP PPP version used throughout (filter applied when reading the dimensional tables). +PPP_VERSION = 2021 + +# Define latest year +LATEST_YEAR = 2025 + # Define width and height of the plot WIDTH = 1500 HEIGHT = 750 @@ -30,6 +33,7 @@ # Color used for reference lines (IPL, World median, $900/$500 lines, country medians, etc.) REFERENCE_LINE_COLOR = "#6c7a89" + # Define gridsize for when I need higher resolution GRIDSIZE_HIGHER_RESOLUTION = 1000 @@ -106,35 +110,43 @@ def run() -> None: # World Bank PIP dimensional tables → flat shapes the plotting code expects. # Percentiles: legacy table was filtered to ppp_version=2021; replicate by filtering here. df_percentiles = pd.read_feather(PERCENTILES_URL) - df_percentiles = df_percentiles[df_percentiles["ppp_version"] == 2021].reset_index(drop=True) + df_percentiles = df_percentiles[ + df_percentiles["ppp_version"] == PPP_VERSION + ].reset_index(drop=True) # Main indicators (used only for World aggregates): rebuild a flat per-(country, year) # frame from complete_series by selecting the right slice for each column family. df_complete = pd.read_feather(COMPLETE_SERIES_URL) - base = (df_complete["ppp_version"] == 2021) & (df_complete["welfare_type"] == "income or consumption") - df_summary = df_complete[base & df_complete["decile"].isna() & df_complete["poverty_line"].isna()][ - ["country", "year", "mean", "median", "top1_thr"] - ] - df_decile9 = df_complete[base & (df_complete["decile"] == "9") & df_complete["poverty_line"].isna()][ - ["country", "year", "thr"] - ].rename(columns={"thr": "decile9_thr"}) - df_pov30 = df_complete[base & df_complete["decile"].isna() & (df_complete["poverty_line"] == "3000")][ - ["country", "year", "headcount_ratio"] - ].rename(columns={"headcount_ratio": "headcount_ratio_3000"}) - df_main_indicators = df_summary.merge(df_decile9, on=["country", "year"], how="left").merge( - df_pov30, on=["country", "year"], how="left" + base = (df_complete["ppp_version"] == PPP_VERSION) & ( + df_complete["welfare_type"] == "income or consumption" + ) + df_summary = df_complete[ + base & df_complete["decile"].isna() & df_complete["poverty_line"].isna() + ][["country", "year", "mean", "median", "top1_thr"]] + df_decile9 = df_complete[ + base & (df_complete["decile"] == "9") & df_complete["poverty_line"].isna() + ][["country", "year", "thr"]].rename(columns={"thr": "decile9_thr"}) + df_pov30 = df_complete[ + base & df_complete["decile"].isna() & (df_complete["poverty_line"] == "3000") + ][["country", "year", "headcount_ratio"]].rename( + columns={"headcount_ratio": "headcount_ratio_3000"} ) + df_main_indicators = df_summary.merge( + df_decile9, on=["country", "year"], how="left" + ).merge(df_pov30, on=["country", "year"], how="left") # Add country-level rows for a handful of reference countries. PIP stores each country's # smoothed combined series under either welfare_type="income" or "consumption" # (whichever the country reports primarily); the combined "income or consumption" label # is only used for the World aggregate. Prefer consumption when both are available # (PIP's preferred welfare measure for most countries), fall back to income otherwise. country_extras = df_complete[ - (df_complete["ppp_version"] == 2021) + (df_complete["ppp_version"] == PPP_VERSION) & df_complete["welfare_type"].isin(["consumption", "income"]) & df_complete["decile"].isna() & df_complete["poverty_line"].isna() - & df_complete["country"].isin(["Norway", "United States", "Sweden", "United Kingdom"]) + & df_complete["country"].isin( + ["Norway", "United States", "Sweden", "United Kingdom"] + ) ][["country", "year", "mean", "median", "top1_thr", "welfare_type"]] # "consumption" sorts before "income" alphabetically, so keep="first" prefers consumption. country_extras = ( @@ -142,7 +154,9 @@ def run() -> None: .drop_duplicates(subset=["country", "year"], keep="first") .drop(columns="welfare_type") ) - df_main_indicators = pd.concat([df_main_indicators, country_extras], ignore_index=True) + df_main_indicators = pd.concat( + [df_main_indicators, country_extras], ignore_index=True + ) # Skipped while iterating on pen parade (no national-lines consumer enabled). # df_national_lines.loc[ @@ -764,7 +778,7 @@ def distributional_plots( x=ipl, # x-coordinate for the text y=plt.ylim()[1] * 0.99, # y-coordinate for the text, positioned near the top of the plot - s=f"International Poverty Line: ${round(ipl,2):.2f}", # Text string to display + s=f"International Poverty Line: ${round(ipl, 2):.2f}", # Text string to display color="grey", # Color of the text rotation=90, # Rotate the text 90 degrees verticalalignment="top", # Align the text vertically at the top @@ -788,7 +802,7 @@ def distributional_plots( plt.text( x=world_mean_year, y=plt.ylim()[1] * 0.99, - s=f"World mean: ${round(world_mean_year,2):.2f}", + s=f"World mean: ${round(world_mean_year, 2):.2f}", color="grey", rotation=90, verticalalignment="top", @@ -813,7 +827,7 @@ def distributional_plots( plt.text( x=world_median_year, y=plt.ylim()[1] * 0.99, - s=f"World median: ${round(world_median_year,2):.2f}", + s=f"World median: ${round(world_median_year, 2):.2f}", color="grey", rotation=90, verticalalignment="top", @@ -1145,7 +1159,7 @@ def distributional_plots_per_row( ax.text( x=national_poverty_line, y=plt.ylim()[0] - 0.05 * (plt.ylim()[1] - plt.ylim()[0]), - s=f"${round(national_poverty_line,2):.2f} The poverty line in {country}*", + s=f"${round(national_poverty_line, 2):.2f} The poverty line in {country}*", color="grey", rotation=0, verticalalignment="top", @@ -1159,7 +1173,7 @@ def distributional_plots_per_row( ax.text( x=ipl, y=plt.ylim()[1], - s=f"International\nPoverty Line:\n${round(ipl,2):.2f}", + s=f"International\nPoverty Line:\n${round(ipl, 2):.2f}", color="grey", rotation=90, verticalalignment="top", @@ -1171,7 +1185,7 @@ def distributional_plots_per_row( ax.text( x=world_mean_year, y=plt.ylim()[1], - s=f"World mean:\n${round(world_mean_year,2):.2f}", + s=f"World mean:\n${round(world_mean_year, 2):.2f}", color="grey", rotation=90, verticalalignment="top", @@ -1183,7 +1197,7 @@ def distributional_plots_per_row( ax.text( x=world_median_year, y=plt.ylim()[1], - s=f"World median:\n${round(world_median_year,2):.2f}", + s=f"World median:\n${round(world_median_year, 2):.2f}", color="grey", rotation=90, verticalalignment="top", @@ -1438,7 +1452,9 @@ def pen_parade( zero_rows = data_year.drop_duplicates(subset=[hue]).copy() zero_rows[x] = 0 zero_rows[y] = 0 - data_year = pd.concat([zero_rows, data_year], ignore_index=True).reset_index(drop=True) + data_year = pd.concat( + [zero_rows, data_year], ignore_index=True + ).reset_index(drop=True) # Compute the y-value at cut_percentile (used to set the y-axis cap and to anchor # the p99 annotation). Keep ALL x rows so the curve spans the full x range, and @@ -1454,10 +1470,14 @@ def pen_parade( if y_at_cut is not None: data_year = data_year.copy() data_year.loc[data_year[y] > y_at_cut, y] = y_at_cut - plateau_end = data_year.drop_duplicates(subset=[hue], keep="last").copy() + plateau_end = data_year.drop_duplicates( + subset=[hue], keep="last" + ).copy() plateau_end[x] = 100 plateau_end[y] = y_at_cut - data_year = pd.concat([data_year, plateau_end], ignore_index=True).reset_index(drop=True) + data_year = pd.concat( + [data_year, plateau_end], ignore_index=True + ).reset_index(drop=True) else: y_at_cut = None y_at_fade_floor = None @@ -1536,6 +1556,7 @@ def pen_parade( reference_ticks: list[tuple[float, str]] = [] if add_lines: + def axhline_over_curve(y_value): """Dotted reference line at y_value, but only over the filled curve area (from where the curve crosses y_value to the right edge), so the @@ -1555,9 +1576,7 @@ def axhline_over_curve(y_value): # International poverty line axhline_over_curve(ipl) - reference_ticks.append( - (ipl, f"← ${ipl:.{dollar_decimals}f} per {period}") - ) + reference_ticks.append((ipl, f"← ${ipl:.{dollar_decimals}f} per {period}")) # Reference lines at the equivalent of $900/month and $500/month, in the # chart's current period units. Defined in monthly terms then rescaled by @@ -1574,7 +1593,10 @@ def axhline_over_curve(y_value): # World median axhline_over_curve(world_median_year) reference_ticks.append( - (world_median_year, f"← ${world_median_year:.{dollar_decimals}f} per {period} — the global median income") + ( + world_median_year, + f"← ${world_median_year:.{dollar_decimals}f} per {period} — the global median income", + ) ) # 90th percentile of the world axhline_over_curve(world_90th_percentile) @@ -1589,9 +1611,7 @@ def axhline_over_curve(y_value): # If the chart was cut below percentile 99, the 99th threshold sits above the # visible y range — draw the label above the cropped top of the chart, anchored # at x = cut_percentile (the right edge of the visible plot), as in the reference. - p99_label = ( - f"↑ The richest 1% live on more than ${world_99th_percentile:.{dollar_decimals}f} per {period}" - ) + p99_label = f"↑ The richest 1% live on more than ${world_99th_percentile:.{dollar_decimals}f} per {period}" if cut_percentile < 99: import textwrap @@ -1613,7 +1633,9 @@ def axhline_over_curve(y_value): ) else: axhline_over_curve(world_99th_percentile) - reference_ticks.append((world_99th_percentile, p99_label.replace("↑", "→"))) + reference_ticks.append( + (world_99th_percentile, p99_label.replace("↑", "→")) + ) # Country median reference lines (most-recent value at or before the plot year). # Pairs in COUNTRY_MEDIAN_MERGE_PAIRS that fall within MEDIAN_MERGE_TOLERANCE of @@ -1630,6 +1652,7 @@ def axhline_over_curve(y_value): def display_name(country: str) -> str: return COUNTRY_DISPLAY_NAMES.get(country, country) + country_medians_lookup = {} for country_name in ["Norway", "United States", "Sweden", "United Kingdom"]: country_rows = df_main_indicators[ @@ -1724,8 +1747,13 @@ def display_name(country: str) -> str: bx = [0.0, 0.0, x_brace_end, x_brace_end] by = [y_low, y_high, y_high, y_low] line_plot.plot( - bx, by, color=sns.color_palette("deep")[3], linewidth=1.5, - clip_on=False, solid_capstyle="butt", solid_joinstyle="miter", + bx, + by, + color=sns.color_palette("deep")[3], + linewidth=1.5, + clip_on=False, + solid_capstyle="butt", + solid_joinstyle="miter", ) # Remove y-axis labels and ticks @@ -1739,7 +1767,7 @@ def display_name(country: str) -> str: # Change format of x-axis to percentage line_plot.get_xaxis().set_major_formatter( - plt.FuncFormatter(lambda x, _: f"{x/100:.0%}") + plt.FuncFormatter(lambda x, _: f"{x / 100:.0%}") ) # Replace the default dollar-amount y-tick labels with the reference-line labels. @@ -1836,7 +1864,9 @@ def matched_anchor(text: str) -> str | None: # (so we don't see the faint top edge), while above the plateau the band fades # smoothly into the chart background. if y_at_cut is not None: - fade_y_bottom = y_at_fade_floor if y_at_fade_floor is not None else y_at_cut * 0.85 + fade_y_bottom = ( + y_at_fade_floor if y_at_fade_floor is not None else y_at_cut * 0.85 + ) fade_y_top = y_at_cut * 1.10 plateau_frac = (y_at_cut - fade_y_bottom) / (fade_y_top - fade_y_bottom) n = 256 From 812d21f5adf7ecaaaf512912fef2b7501230ed34 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 18:39:40 +0100 Subject: [PATCH 16/38] :sparkles: pen_parade: bold-title annotations above the poverty brackets MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add three labeled annotations above the IPL, global median, and high- income poverty brackets, each in 2-3 lines via VPacker / TextArea / AnnotationBbox so the bold title sits above the regular-weight body and both share a right edge anchored at the bracket's right tip. - Poverty: \$900-bracket gets the World headcount share at \$900/month (headcount_ratio_3000 pulled from complete_series and merged into df_main_indicators). - Deep poverty: global-median bracket gets the "poorer half of the world — 4 billion people — live on less than \$X per period" copy in three lines. - Extreme poverty: IPL bracket gets the World headcount share at the IPL ($3/day → poverty_line "300", new df_pov_ipl merge) in three lines, right-aligned at the bracket end. Also add PPP_VERSION = 2021 constant and route df_complete filters through it. Co-Authored-By: Claude Opus 4.7 (1M context) --- ..._common_norm_False_multiple_areas_none.svg | 39319 ++++++++-------- ...25_survey_True_log_True_fill_False_pen.svg | 303 +- ..._common_norm_False_multiple_areas_none.svg | 1726 +- ..._common_norm_False_multiple_areas_none.svg | 408 +- ..._common_norm_False_multiple_areas_none.svg | 1718 +- ..._common_norm_False_multiple_areas_none.svg | 434 +- ..._common_norm_False_multiple_areas_none.svg | 1724 +- ..._common_norm_False_multiple_areas_none.svg | 444 +- ..._common_norm_False_multiple_areas_none.svg | 1718 +- ..._common_norm_False_multiple_areas_none.svg | 440 +- ..._common_norm_False_multiple_areas_none.svg | 1714 +- ..._common_norm_False_multiple_areas_none.svg | 1718 +- ..._multiple_layer_common_norm_False_rows.svg | 27004 ++++++----- ..._multiple_layer_common_norm_False_rows.svg | 27742 ++++++----- ..._common_norm_False_multiple_areas_none.svg | 10682 ++--- ..._common_norm_False_multiple_areas_3_30.svg | 10892 ++--- ..._common_norm_False_multiple_areas_3_30.svg | 9440 ++-- ..._common_norm_False_multiple_areas_3_30.svg | 5482 +-- ..._common_norm_False_multiple_areas_none.svg | 1728 +- ..._common_norm_False_multiple_areas_none.svg | 1732 +- ...5_survey_False_log_False_fill_True_pen.svg | 816 +- ...er_common_norm_False_multiple_areas_30.svg | 6796 +-- ..._norm_False_multiple_areas_3_10_30_100.svg | 13028 +++-- ...k_common_norm_True_multiple_areas_none.svg | 5048 +- .../distribution_generator.py | 88 +- 25 files changed, 86045 insertions(+), 86099 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 91fb9019..991fe3de 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:45.995033 + 2026-05-21T14:04:38.297886 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,19645 +330,19798 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - - diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg index 70796dc3..662e36a3 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg @@ -1,12 +1,12 @@ - + - 2026-01-02T17:38:48.320242 + 2026-05-21T18:02:51.864085 image/svg+xml @@ -21,8 +21,8 @@ - - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -349,109 +349,111 @@ L 2 0 - + - +" style="fill: none; stroke: #dd8452; stroke-width: 2.5; stroke-linecap: round"/> - +" style="fill: none; stroke: #55a868; stroke-width: 2.5; stroke-linecap: round"/> - + +" style="fill: none; stroke: #4c72b0; stroke-width: 2.5; stroke-linecap: round"/> Chile @@ -695,7 +700,7 @@ L 517.63125 38.028906 +" style="fill: none; stroke: #dd8452; stroke-width: 2.5; stroke-linecap: round"/> Peru @@ -704,7 +709,7 @@ L 517.63125 52.174219 +" style="fill: none; stroke: #55a868; stroke-width: 2.5; stroke-linecap: round"/> Uruguay diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b2c5cb8f..d3e97df5 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.261552 + 2026-05-21T14:04:38.628785 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,839 +337,839 @@ L 0 2 - - + - - + - - - @@ -1178,13 +1178,13 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 3d459d0b..9ee0cb85 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.377308 + 2026-05-21T14:04:38.716712 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,194 +146,194 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -344,7 +344,7 @@ L 0 2 - - + - - + @@ -1170,13 +1170,13 @@ L 324.652807 7.2 " style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - - @@ -1188,10 +1188,10 @@ L 844.2 228.96 International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 Denmark (2023) diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 36be27d5..0cdfd2a5 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.094721 + 2026-05-21T14:04:38.454804 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,159 +146,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -309,839 +309,839 @@ L 0 2 - - + - - + - - - @@ -1150,13 +1150,13 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 4fd73dc9..a8f366d1 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.173761 + 2026-05-21T14:04:38.534614 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + @@ -1142,13 +1142,13 @@ L 211.414928 7.2 " style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - - @@ -1160,10 +1160,10 @@ L 844.2 228.96 International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 Denmark (2023) diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0a3efd3b..ebccd9ed 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.467785 + 2026-05-21T14:04:38.863533 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,839 +330,839 @@ L 0 2 - - + - - + - - - @@ -1171,13 +1171,13 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5e3e5cc1..758a018d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.539971 + 2026-05-21T14:04:38.943520 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + @@ -1156,13 +1156,13 @@ L 261.095786 7.2 " style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - - @@ -1174,10 +1174,10 @@ L 844.2 228.96 International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 Denmark (2023) diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 13e96a8b..48ed4b85 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.633502 + 2026-05-21T14:04:39.044849 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,159 +146,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -309,839 +309,839 @@ L 0 2 - - + - - + - - - @@ -1150,13 +1150,13 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 9d39ecd9..3e52eca8 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.704920 + 2026-05-21T14:04:39.123522 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + @@ -1142,13 +1142,13 @@ L 213.960268 7.2 " style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - - @@ -1160,10 +1160,10 @@ L 844.2 228.96 International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 Denmark (2023) diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b3a72663..2ee1fecd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.794025 + 2026-05-21T14:04:39.211901 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,839 +295,839 @@ L 0 2 - - + - - + - - - @@ -1136,13 +1136,13 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 67036724..def401af 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:46.865150 + 2026-05-21T14:04:39.291711 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,839 +295,839 @@ L 0 2 - - + - - + - - - @@ -1136,19 +1136,19 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 - Denmark (2023) + Denmark (2023) - Syria (2022) + Syria (2022) diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 0bb88dfb..6e29ce59 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,12 +1,12 @@ - + - 2026-01-02T17:38:47.398651 + 2026-05-21T14:04:39.892856 image/svg+xml @@ -21,18 +21,18 @@ - - @@ -74,2832 +74,2824 @@ z - - + - - + - - - - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Ethiopia + Ethiopia - @@ -2940,2660 +2932,2662 @@ z - - + - - + - - - - - - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Bangladesh + Bangladesh - @@ -5634,2548 +5628,2546 @@ z - - + - - + - - - - - - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Vietnam + Vietnam - @@ -8216,2605 +8208,2525 @@ z - - + - - + - - - - - - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Turkey + Turkey @@ -10822,3353 +10734,3307 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - - - - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - International - Poverty Line: - $3.00 + International + Poverty Line: + $3.00 - World mean: - $21.85 + World mean: + $21.95 - World median: - $9.35 + World median: + $9.45 - United States + United States diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index daa21abf..fd58a3f0 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,12 +1,12 @@ - + - 2026-01-02T17:38:47.729986 + 2026-05-21T14:04:40.224301 image/svg+xml @@ -22,17 +22,17 @@ - @@ -75,2936 +75,2936 @@ z - - + - - + - - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Consumption data from 2021 + Consumption data from 2021 - Ethiopia + Ethiopia - @@ -3046,2770 +3046,2770 @@ z - - + - - + - - - - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Consumption data from 2022 + Consumption data from 2022 - Bangladesh + Bangladesh - @@ -5851,2644 +5851,2644 @@ z - - + - - + - - - - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Consumption data from 2022 + Consumption data from 2022 - Vietnam + Vietnam - @@ -8530,2739 +8530,2614 @@ z - - + - - + - - - - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Income data from 2022 + Income data from 2023 - Turkey + Turkey @@ -11270,3281 +11145,3232 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - International - Poverty Line: - $3.00 + International + Poverty Line: + $3.00 - Income data from 2023 + Income data from 2024 - United States + United States diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index fa86dd12..dfb91ff4 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:45.854935 + 2026-05-21T14:04:38.042550 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,5325 +330,5325 @@ L 0 2 - - + - - + - - + - - @@ -5657,10 +5657,10 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - Madagascar (2021) + Madagascar (2021) - United Kingdom (2021) + United Kingdom (2021) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 58308e02..13297e7a 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:48.487738 + 2026-05-21T14:04:57.432715 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,187 +126,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -317,5437 +317,5437 @@ L 0 2 - - + - - + - - + - @@ -5756,7 +5756,7 @@ L 794.88 123.552 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - Sweden (1820) + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 1ed15d56..150fe650 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:48.551138 + 2026-05-21T14:04:57.498911 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,187 +126,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -317,4711 +317,4711 @@ L 0 2 - - + - - + - - + - @@ -5030,7 +5030,7 @@ L 794.88 123.552 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - Sweden (1920) + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 1d7a5a82..874056c2 100644 --- a/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:48.710855 + 2026-05-21T14:04:59.276689 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,187 +126,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -317,2723 +317,2727 @@ L 0 2 - - + - - + - @@ -3042,7 +3046,7 @@ L 794.88 123.552 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - Sweden (2025) + Sweden (2025) diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0250c008..2a37e1b1 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-01-02T17:38:47.019237 + 2026-05-21T14:04:39.455909 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,285 +41,285 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,839 +330,839 @@ L 0 2 - - + - - + - - - @@ -1171,13 +1171,13 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 54cc6e6e..0c88bd04 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-01-02T17:38:47.092354 + 2026-05-21T14:04:39.538405 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,292 +41,292 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,839 +337,839 @@ L 0 2 - - + - - + - - - @@ -1178,19 +1178,19 @@ L 844.2 228.96 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 - United States (2023) + United States (2024) - Burundi (2020) + Burundi (2020) diff --git a/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg index a99eaa06..cec2edd0 100644 --- a/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg @@ -1,12 +1,12 @@ - + - 2026-01-02T17:38:48.243435 + 2026-05-21T18:02:51.761807 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,531 +41,545 @@ z - - + - 0% + 0% - + - 20% + 20% - + - 40% + 40% - + - 60% + 60% - + - 80% + 80% - + - 100% + 100% - Percentage of the population + Percentage of the population - - + - - $0 per month - - + - - $1000 per month - - + - - $2000 per month - - + - - $3000 per month - - + - - $4000 per month - - + - - $5000 per month + + + + + + - - + - - - - + - + - + - + - + - + - + - + - - International Poverty Line: $90.00 - + + - - World mean: $655.56 - + + + + + + + + - - World median: $280.50 - + + - - The poorest 50% live on less than $280.50 a month - + + ↑ The richest 1% live on + more than $4950 per month - - $900 corresponds to the poverty line of a high-income country - + + ← $90 per month - - - Globally, 80.5% live on less than $900 a month + + ← $283 per month — the global median + income - - $1638.00 - + + ← $500 per month - - - 10% is richer + + ← $900 per month - - $4920.00 - + + ← $1641 per month — the median + income in Sweden and the UK, and the + income above which the richest 10% + of the world live - - - 1% is richer + + ← $2162 per month — the median + income in the USA + + + ← $2333 per month — the median + income in Norway + diff --git a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index 62274476..25ae2fd9 100644 --- a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:45.662668 + 2026-05-21T14:04:37.240248 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,3372 +330,3372 @@ L 0 2 - - + - - + - diff --git a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 0aa9428f..c9946a41 100644 --- a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:45.768693 + 2026-05-21T14:04:37.944819 image/svg+xml @@ -41,102 +41,102 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,6513 +330,6511 @@ L 0 2 - - + - - + - - + - - + - - + - diff --git a/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index e7abf0ed..ead74bcd 100644 --- a/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-01-02T17:38:48.179402 + 2026-05-21T14:04:41.244998 image/svg+xml @@ -41,292 +41,292 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - - @@ -3233,13 +3233,13 @@ L 844.2 423 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International Poverty Line: $3.00 + International Poverty Line: $3.00 - World mean: $21.85 + World mean: $21.95 - World median: $9.35 + World median: $9.45 diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 480ef397..f4d4d3a8 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -20,7 +20,7 @@ PPP_VERSION = 2021 # Define latest year -LATEST_YEAR = 2025 +LATEST_YEAR = 2026 # Define width and height of the plot WIDTH = 1500 @@ -131,9 +131,17 @@ def run() -> None: ][["country", "year", "headcount_ratio"]].rename( columns={"headcount_ratio": "headcount_ratio_3000"} ) - df_main_indicators = df_summary.merge( - df_decile9, on=["country", "year"], how="left" - ).merge(df_pov30, on=["country", "year"], how="left") + # PIP stores poverty_line in cents/day, so the IPL ($3/day) is "300". + df_pov_ipl = df_complete[ + base & df_complete["decile"].isna() & (df_complete["poverty_line"] == "300") + ][["country", "year", "headcount_ratio"]].rename( + columns={"headcount_ratio": "headcount_ratio_300"} + ) + df_main_indicators = ( + df_summary.merge(df_decile9, on=["country", "year"], how="left") + .merge(df_pov30, on=["country", "year"], how="left") + .merge(df_pov_ipl, on=["country", "year"], how="left") + ) # Add country-level rows for a handful of reference countries. PIP stores each country's # smoothed combined series under either welfare_type="income" or "consumption" # (whichever the country reports primarily); the combined "income or consumption" label @@ -1735,6 +1743,37 @@ def display_name(country: str) -> str: ] y_range = y_at_cut if y_at_cut is not None else line_plot.get_ylim()[1] brace_height_data = y_range * 0.012 # height of the bracket + from matplotlib.offsetbox import AnnotationBbox, TextArea, VPacker + + red = sns.color_palette("deep")[3] + + def styled_annotation(x, y, title, text, box_alignment): + """Multi-line annotation: bold title on top, regular text below. `text` + can contain ``\\n`` to split into multiple regular lines; all lines are + right-aligned within the box so they share their right edge.""" + children = [ + TextArea( + title, + textprops={"color": red, "fontsize": 9, "fontweight": "bold"}, + ) + ] + for line in text.split("\n"): + children.append( + TextArea(line, textprops={"color": red, "fontsize": 9}) + ) + packer = VPacker(children=children, align="right", pad=0, sep=2) + line_plot.add_artist( + AnnotationBbox( + packer, + (x, y), + xycoords="data", + box_alignment=box_alignment, + frameon=False, + pad=0, + ) + ) + + high_income_value = POVERTY_LINE_HIGH_INCOME * period_factor for brace_y in brace_values: above = data_year[data_year[y] >= brace_y] if above.empty: @@ -1755,6 +1794,47 @@ def display_name(country: str) -> str: solid_capstyle="butt", solid_joinstyle="miter", ) + # Annotate the high-income bracket with the headcount share at $X. + if brace_y == high_income_value: + world_share_hi = df_main_indicators.loc[ + (df_main_indicators["country"] == "World") + & (df_main_indicators["year"] == year), + "headcount_ratio_3000", + ].values[0] + styled_annotation( + x_brace_end, + y_high, + title="Poverty", + text=f"{world_share_hi:.0f}% of the world population live on less than ${brace_y:.0f} per {period}", + box_alignment=(1.0, 0.0), + ) + if brace_y == world_median_year: + styled_annotation( + x_brace_end, + y_high, + title="Deep poverty", + text=( + "The poorer half of the world population — 4 billion people\n" + f"live on less than ${brace_y:.{dollar_decimals}f} per {period}" + ), + box_alignment=(1.0, 0.0), + ) + if brace_y == ipl: + world_share_ipl = df_main_indicators.loc[ + (df_main_indicators["country"] == "World") + & (df_main_indicators["year"] == year), + "headcount_ratio_300", + ].values[0] + styled_annotation( + x_brace_end, + y_high, + title="Extreme poverty", + text=( + f"The poorest {world_share_ipl:.0f}%\n" + f"live on less than ${brace_y:.{dollar_decimals}f} per {period}" + ), + box_alignment=(1.0, 0.0), + ) # Remove y-axis labels and ticks line_plot.set_ylabel("") From 1df1b372133629887ac1be350493d1b299fe9556 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 19:11:18 +0100 Subject: [PATCH 17/38] :sparkles: pen_parade: poverty bands, em-dash text, right-aligned labels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Shade the area under the curve below each poverty line in the same blue as the main fill (alpha 0.3, stacked) so the IPL / median / high-income bands deepen progressively. - Annotation copy: spaced em dashes used consistently; "Deep poverty" reads "The poorer half of the world population — 4 billion people — live on less than \$X per period". - Right-align the headers ("Poverty", "Deep poverty", "Extreme poverty") via ha="right"/multialignment="right" so each block has a single clean right edge across the bold title and the body lines. - Anchor the AnnotationBbox's right edge at the bracket's left edge (box_alignment=(1.0, 0.0)) with xybox=(-4, 0) so the label's right edge sits just before the bracket — text → bracket flow without an external gap. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 41 ++++++++++++++----- 1 file changed, 30 insertions(+), 11 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index f4d4d3a8..72a0db71 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1564,6 +1564,27 @@ def pen_parade( reference_ticks: list[tuple[float, str]] = [] if add_lines: + # Poverty bands shaded in the same blue as the main fill — one per poverty + # line where the curve sits below that threshold. Overlapping fills stack + # their alphas, deepening the blue as the poverty line gets stricter. + x_data = data_year[x].to_numpy() + y_data = data_year[y].to_numpy() + poverty_fill_color = sns.color_palette("deep")[0] + for poverty_y in ( + POVERTY_LINE_HIGH_INCOME * period_factor, + world_median_year, + ipl, + ): + line_plot.fill_between( + x_data, + 0, + y_data, + where=(y_data <= poverty_y), + alpha=0.3, + color=poverty_fill_color, + interpolate=True, + linewidth=0, + ) def axhline_over_curve(y_value): """Dotted reference line at y_value, but only over the filled curve @@ -1751,22 +1772,20 @@ def styled_annotation(x, y, title, text, box_alignment): """Multi-line annotation: bold title on top, regular text below. `text` can contain ``\\n`` to split into multiple regular lines; all lines are right-aligned within the box so they share their right edge.""" + common = {"color": red, "fontsize": 9, "ha": "right", "multialignment": "right"} children = [ - TextArea( - title, - textprops={"color": red, "fontsize": 9, "fontweight": "bold"}, - ) + TextArea(title, textprops={**common, "fontweight": "bold"}) ] for line in text.split("\n"): - children.append( - TextArea(line, textprops={"color": red, "fontsize": 9}) - ) + children.append(TextArea(line, textprops=common)) packer = VPacker(children=children, align="right", pad=0, sep=2) line_plot.add_artist( AnnotationBbox( packer, (x, y), xycoords="data", + xybox=(-4, 0), + boxcoords="offset points", box_alignment=box_alignment, frameon=False, pad=0, @@ -1802,7 +1821,7 @@ def styled_annotation(x, y, title, text, box_alignment): "headcount_ratio_3000", ].values[0] styled_annotation( - x_brace_end, + 0, y_high, title="Poverty", text=f"{world_share_hi:.0f}% of the world population live on less than ${brace_y:.0f} per {period}", @@ -1810,11 +1829,11 @@ def styled_annotation(x, y, title, text, box_alignment): ) if brace_y == world_median_year: styled_annotation( - x_brace_end, + 0, y_high, title="Deep poverty", text=( - "The poorer half of the world population — 4 billion people\n" + "The poorer half of the world population — 4 billion people — \n" f"live on less than ${brace_y:.{dollar_decimals}f} per {period}" ), box_alignment=(1.0, 0.0), @@ -1826,7 +1845,7 @@ def styled_annotation(x, y, title, text, box_alignment): "headcount_ratio_300", ].values[0] styled_annotation( - x_brace_end, + 0, y_high, title="Extreme poverty", text=( From f4f26a6ca8168d31ecfe436d6d85e2847f21075d Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 19:17:30 +0100 Subject: [PATCH 18/38] :wrench: pen_parade: skip p0=0 anchor on log-scale, Poverty in 3 lines MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Guard the (x=0, y=0) per-hue anchor row behind `not log_scale` so log-scaled pen parades (Chile/Peru/Uruguay) actually render again — log(0) = -inf would otherwise blank the line geometry. - Split the Poverty annotation into 3 lines (bold title, then "X% of the world population" + "live on less than \$Y per period") to match the Deep/Extreme poverty annotations' shape. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator/distribution_generator.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 72a0db71..11db7085 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1455,8 +1455,9 @@ def pen_parade( data_year = data[data["year"] == year].reset_index(drop=True) # Anchor each per-hue line at (x=0, y=0) so the curve starts at the origin instead - # of at percentile=1. - if len(data_year) > 0: + # of at percentile=1. Skipped on log-scale because log(0) = -inf would blank the + # plot (the line/fill points get clipped and nothing renders). + if len(data_year) > 0 and not log_scale: zero_rows = data_year.drop_duplicates(subset=[hue]).copy() zero_rows[x] = 0 zero_rows[y] = 0 @@ -1824,7 +1825,10 @@ def styled_annotation(x, y, title, text, box_alignment): 0, y_high, title="Poverty", - text=f"{world_share_hi:.0f}% of the world population live on less than ${brace_y:.0f} per {period}", + text=( + f"{world_share_hi:.0f}% of the world population\n" + f"live on less than ${brace_y:.0f} per {period}" + ), box_alignment=(1.0, 0.0), ) if brace_y == world_median_year: From f798be2c8a0f251cfa5bb633524618b92946e867 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 19:26:39 +0100 Subject: [PATCH 19/38] :wrench: pen_parade: wrap-driven annotations, uniform left alignment - styled_annotation now wraps the body text at wrap_width=32 chars via textwrap.fill, so callers don't need to embed \\n breaks manually. - All annotation boxes use box_alignment=(0.0, 0.0) with a uniform xybox=(-130, 0) leftward offset, so every block's LEFT edge sits at the same x position regardless of line count or text length. - Drop the manual line splits from the three annotation call sites (text passed as one logical sentence each). - Black-format the file. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../distribution_generator.py | 53 ++++++++++--------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 11db7085..b72febd7 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1765,27 +1765,37 @@ def display_name(country: str) -> str: ] y_range = y_at_cut if y_at_cut is not None else line_plot.get_ylim()[1] brace_height_data = y_range * 0.012 # height of the bracket + import textwrap + from matplotlib.offsetbox import AnnotationBbox, TextArea, VPacker red = sns.color_palette("deep")[3] - def styled_annotation(x, y, title, text, box_alignment): - """Multi-line annotation: bold title on top, regular text below. `text` - can contain ``\\n`` to split into multiple regular lines; all lines are - right-aligned within the box so they share their right edge.""" - common = {"color": red, "fontsize": 9, "ha": "right", "multialignment": "right"} - children = [ - TextArea(title, textprops={**common, "fontweight": "bold"}) - ] - for line in text.split("\n"): + def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): + """Multi-line annotation: bold title on top, regular text below. The + `text` is auto-wrapped at `wrap_width` characters (preserving any explicit + ``\\n`` you do add). All lines are left-aligned within the box.""" + common = { + "color": red, + "fontsize": 9, + "ha": "left", + "multialignment": "left", + } + children = [TextArea(title, textprops={**common, "fontweight": "bold"})] + wrapped_lines = [] + for raw in text.split("\n"): + wrapped_lines.extend( + textwrap.fill(raw, width=wrap_width).split("\n") + ) + for line in wrapped_lines: children.append(TextArea(line, textprops=common)) - packer = VPacker(children=children, align="right", pad=0, sep=2) + packer = VPacker(children=children, align="left", pad=0, sep=2) line_plot.add_artist( AnnotationBbox( packer, (x, y), xycoords="data", - xybox=(-4, 0), + xybox=(-130, 0), boxcoords="offset points", box_alignment=box_alignment, frameon=False, @@ -1825,22 +1835,16 @@ def styled_annotation(x, y, title, text, box_alignment): 0, y_high, title="Poverty", - text=( - f"{world_share_hi:.0f}% of the world population\n" - f"live on less than ${brace_y:.0f} per {period}" - ), - box_alignment=(1.0, 0.0), + text=f"{world_share_hi:.0f}% of the world population live on less than ${brace_y:.0f} per {period}", + box_alignment=(0.0, 0.0), ) if brace_y == world_median_year: styled_annotation( 0, y_high, title="Deep poverty", - text=( - "The poorer half of the world population — 4 billion people — \n" - f"live on less than ${brace_y:.{dollar_decimals}f} per {period}" - ), - box_alignment=(1.0, 0.0), + text=f"The poorer half of the world population — 4 billion people — live on less than ${brace_y:.{dollar_decimals}f} per {period}", + box_alignment=(0.0, 0.0), ) if brace_y == ipl: world_share_ipl = df_main_indicators.loc[ @@ -1852,11 +1856,8 @@ def styled_annotation(x, y, title, text, box_alignment): 0, y_high, title="Extreme poverty", - text=( - f"The poorest {world_share_ipl:.0f}%\n" - f"live on less than ${brace_y:.{dollar_decimals}f} per {period}" - ), - box_alignment=(1.0, 0.0), + text=f"The poorest {world_share_ipl:.0f}% live on less than ${brace_y:.{dollar_decimals}f} per {period}", + box_alignment=(0.0, 0.0), ) # Remove y-axis labels and ticks From 07f3a6e8045c131d64d0bcc9467f9ae2a48eceb7 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 19:35:40 +0100 Subject: [PATCH 20/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20Right-align=20?= =?UTF-8?q?red=20poverty=20annotations=20to=20y-axis?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.7 --- .../distribution_generator.py | 26 ++++++++----------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index b72febd7..7f388ab0 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1,3 +1,4 @@ +import textwrap from pathlib import Path from typing import List, Literal @@ -5,6 +6,7 @@ import numpy as np import pandas as pd import seaborn as sns +from matplotlib.offsetbox import AnnotationBbox, TextArea, VPacker from scipy.optimize import minimize from scipy.stats import norm @@ -1643,8 +1645,6 @@ def axhline_over_curve(y_value): # at x = cut_percentile (the right edge of the visible plot), as in the reference. p99_label = f"↑ The richest 1% live on more than ${world_99th_percentile:.{dollar_decimals}f} per {period}" if cut_percentile < 99: - import textwrap - wrapped_p99 = textwrap.fill(p99_label, width=28) # Anchor at the top-right of the axes so the label sits in the same # right-margin column as the other y-tick labels, just above the topmost @@ -1765,21 +1765,19 @@ def display_name(country: str) -> str: ] y_range = y_at_cut if y_at_cut is not None else line_plot.get_ylim()[1] brace_height_data = y_range * 0.012 # height of the bracket - import textwrap - - from matplotlib.offsetbox import AnnotationBbox, TextArea, VPacker red = sns.color_palette("deep")[3] def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): """Multi-line annotation: bold title on top, regular text below. The `text` is auto-wrapped at `wrap_width` characters (preserving any explicit - ``\\n`` you do add). All lines are left-aligned within the box.""" + ``\\n`` you do add). All lines are right-aligned within the box so their + right edges sit flush against the y-axis.""" common = { "color": red, "fontsize": 9, - "ha": "left", - "multialignment": "left", + "ha": "right", + "multialignment": "right", } children = [TextArea(title, textprops={**common, "fontweight": "bold"})] wrapped_lines = [] @@ -1789,13 +1787,13 @@ def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): ) for line in wrapped_lines: children.append(TextArea(line, textprops=common)) - packer = VPacker(children=children, align="left", pad=0, sep=2) + packer = VPacker(children=children, align="right", pad=0, sep=2) line_plot.add_artist( AnnotationBbox( packer, (x, y), xycoords="data", - xybox=(-130, 0), + xybox=(-5, 0), boxcoords="offset points", box_alignment=box_alignment, frameon=False, @@ -1836,7 +1834,7 @@ def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): y_high, title="Poverty", text=f"{world_share_hi:.0f}% of the world population live on less than ${brace_y:.0f} per {period}", - box_alignment=(0.0, 0.0), + box_alignment=(1.0, 0.0), ) if brace_y == world_median_year: styled_annotation( @@ -1844,7 +1842,7 @@ def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): y_high, title="Deep poverty", text=f"The poorer half of the world population — 4 billion people — live on less than ${brace_y:.{dollar_decimals}f} per {period}", - box_alignment=(0.0, 0.0), + box_alignment=(1.0, 0.0), ) if brace_y == ipl: world_share_ipl = df_main_indicators.loc[ @@ -1857,7 +1855,7 @@ def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): y_high, title="Extreme poverty", text=f"The poorest {world_share_ipl:.0f}% live on less than ${brace_y:.{dollar_decimals}f} per {period}", - box_alignment=(0.0, 0.0), + box_alignment=(1.0, 0.0), ) # Remove y-axis labels and ticks @@ -1877,8 +1875,6 @@ def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): # Replace the default dollar-amount y-tick labels with the reference-line labels. # Falls back to the dollar formatter when there are no reference lines (add_lines=False). if reference_ticks: - import textwrap - sorted_refs = sorted(reference_ticks) yticks = [t[0] for t in sorted_refs] wrap_width = 36 # characters; tune with the right-margin adjust below From d1bcbe43908bbd4ddc1dfc3115b597a655997fa3 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Thu, 21 May 2026 19:36:31 +0100 Subject: [PATCH 21/38] Refactor code structure for improved readability and maintainability --- ...26_survey_True_log_True_fill_False_pen.svg | 715 +++++++++++++ ...6_survey_False_log_False_fill_True_pen.svg | 940 ++++++++++++++++++ 2 files changed, 1655 insertions(+) create mode 100644 PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg create mode 100644 PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg new file mode 100644 index 00000000..dd92ed7b --- /dev/null +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -0,0 +1,715 @@ + + + + + + + + 2026-05-21T19:33:43.674049 + image/svg+xml + + + Matplotlib v3.10.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0% + + + + + + + + + + 20% + + + + + + + + + + 40% + + + + + + + + + + 60% + + + + + + + + + + 80% + + + + + + + + + + 100% + + + + Percentage of the population + + + + + + + + + + + + + + $1 per day + + + + + + + + + + $2 per day + + + + + + + + + + $5 per day + + + + + + + + + + $10 per day + + + + + + + + + + $20 per day + + + + + + + + + + $50 per day + + + + + + + + + + $100 per day + + + + + + + + + + $200 per day + + + + + + + + + + $500 per day + + + + + + + + + + $1000 per day + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + country + + + + + + Chile + + + + + + Peru + + + + + + Uruguay + + + + + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg new file mode 100644 index 00000000..98a0ea8c --- /dev/null +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -0,0 +1,940 @@ + + + + + + + + 2026-05-21T19:33:43.567244 + image/svg+xml + + + Matplotlib v3.10.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0% + + + + + + + + + + 20% + + + + + + + + + + 40% + + + + + + + + + + 60% + + + + + + + + + + 80% + + + + + + + + + + 100% + + + + Percentage of the population + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ↑ The richest 1% live on + more than $5022 per month + + + + Extreme poverty + + + The poorest 10% live on less + + + than $90 per month + + + + + Deep poverty + + + The poorer half of the world + + + population — 4 billion people — + + + live on less than $289 per month + + + + + Poverty + + + 80% of the world population live + + + on less than $900 per month + + + + ← $90 per month + + + ← $289 per month — the global median + income + + + ← $500 per month + + + ← $900 per month + + + ← $1665 per month — the median + income in Sweden and the UK, and the + income above which the richest 10% + of the world live + + + ← $2162 per month — the median + income in the USA + + + ← $2333 per month — the median + income in Norway + + + + + From 8e59d86c0806494cd633de356da6acf72f2487ea Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 09:05:02 +0100 Subject: [PATCH 22/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20pen=5Fparade:?= =?UTF-8?q?=20interpolate=20crossings=20for=20brackets,=20reference=20line?= =?UTF-8?q?s,=20and=20fills?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaces the integer-percentile snap (above[x].min()) with a shared interpolate_x_at_y helper, so red bracket end-caps and dotted reference lines meet the curve exactly. Adds interpolate=True to KDE area fills. --- ...26_survey_True_log_True_fill_False_pen.svg | 78 +++++++++---------- ...6_survey_False_log_False_fill_True_pen.svg | 64 +++++++-------- .../distribution_generator.py | 63 +++++++++++---- 3 files changed, 117 insertions(+), 88 deletions(-) diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index dd92ed7b..303de2f6 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,11 +6,11 @@ - 2026-05-21T19:33:43.674049 + 2026-05-22T09:01:49.830872 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 98a0ea8c..6be68f0f 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,11 +6,11 @@ - 2026-05-21T19:33:43.567244 + 2026-05-22T09:01:49.729480 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -806,12 +806,12 @@ L 448.2725 597.216401 " style="fill: none; stroke-dasharray: 0.8,1.32; stroke-dashoffset: 0; stroke: #6c7a89; stroke-width: 0.8"/> - - @@ -826,12 +826,12 @@ L 448.2725 250.303415 " style="fill: none; stroke-dasharray: 0.8,1.32; stroke-dashoffset: 0; stroke: #6c7a89; stroke-width: 0.8"/> - - @@ -852,8 +852,8 @@ L 295.2725 553.274092 @@ -934,7 +934,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imagee9232e5754" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 7f388ab0..9c298ea9 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1,6 +1,6 @@ import textwrap from pathlib import Path -from typing import List, Literal +from typing import List, Literal, cast import matplotlib.pyplot as plt import numpy as np @@ -1379,6 +1379,29 @@ def filter_survey_data( return data +def interpolate_x_at_y(xs: np.ndarray, ys: np.ndarray, y_target: float) -> float | None: + """ + Return the x at which a piecewise-linear curve defined by (xs, ys) first + reaches y_target, by linearly interpolating between the two flanking points. + Returns None if the curve never reaches y_target. + + Assumes xs is sorted ascending. Used by the pen parade to land bracket end-caps + and dotted reference lines exactly on the curve, instead of snapping to the + nearest integer-percentile data point. + """ + crossings = ys >= y_target + if not crossings.any(): + return None + i_hi = int(np.argmax(crossings)) + if i_hi == 0: + return float(xs[0]) + y_lo, y_hi_val = ys[i_hi - 1], ys[i_hi] + x_lo, x_hi = xs[i_hi - 1], xs[i_hi] + if y_hi_val == y_lo: + return float(x_hi) + return float(x_lo + (y_target - y_lo) * (x_hi - x_lo) / (y_hi_val - y_lo)) + + def pen_parade( data: pd.DataFrame, df_main_indicators: pd.DataFrame, @@ -1439,9 +1462,10 @@ def pen_parade( else: filename = "multiple_countries" - # Define the income period values - period_factor = PERIOD_VALUES[period]["factor"] - log_ticks = PERIOD_VALUES[period]["log_ticks"] + # Define the income period values. PERIOD_VALUES mixes int factors with list + # log_ticks under the same dict, so cast each lookup back to its concrete type. + period_factor = cast(int, PERIOD_VALUES[period]["factor"]) + log_ticks = cast(List[int], PERIOD_VALUES[period]["log_ticks"]) # Show cents only for daily figures; monthly/yearly values are large enough that decimals are noise. dollar_decimals = 2 if period == "day" else 0 @@ -1589,15 +1613,18 @@ def pen_parade( linewidth=0, ) + ref_sorted = data_year.sort_values(x).reset_index(drop=True) + ref_xs = ref_sorted[x].to_numpy() + ref_ys = ref_sorted[y].to_numpy() + def axhline_over_curve(y_value): """Dotted reference line at y_value, but only over the filled curve area (from where the curve crosses y_value to the right edge), so the - line doesn't clutter the white space where the brackets live.""" - above_y = data_year[data_year[y] >= y_value] - if above_y.empty: - xmin_frac = 0.0 - else: - xmin_frac = float(above_y[x].min()) / 100.0 + line doesn't clutter the white space where the brackets live. The + crossing x is interpolated so the dotted line meets the curve exactly, + rather than snapping to the next integer percentile.""" + crossing_x = interpolate_x_at_y(ref_xs, ref_ys, y_value) + xmin_frac = 0.0 if crossing_x is None else crossing_x / 100.0 plt.axhline( y=y_value, xmin=xmin_frac, @@ -1614,7 +1641,7 @@ def axhline_over_curve(y_value): # chart's current period units. Defined in monthly terms then rescaled by # period_factor / month_factor so the same real-world amounts shift correctly # when the chart switches between day / month / year periods. - month_factor = PERIOD_VALUES["month"]["factor"] + month_factor = cast(int, PERIOD_VALUES["month"]["factor"]) for monthly_value in (900, 500): line_y = monthly_value * period_factor / month_factor axhline_over_curve(line_y) @@ -1803,11 +1830,11 @@ def styled_annotation(x, y, title, text, box_alignment, wrap_width=32): high_income_value = POVERTY_LINE_HIGH_INCOME * period_factor for brace_y in brace_values: - above = data_year[data_year[y] >= brace_y] - if above.empty: - continue - x_brace_end = float(above[x].min()) - if x_brace_end <= 1: + # Interpolate so the bracket's right cap lands exactly where the + # curve crosses brace_y, rather than snapping to the next integer + # percentile (which would leave a visible gap). + x_brace_end = interpolate_x_at_y(ref_xs, ref_ys, brace_y) + if x_brace_end is None or x_brace_end <= 1: continue y_low = brace_y y_high = brace_y + brace_height_data @@ -2038,11 +2065,13 @@ def draw_area_under_curve( # Obtain the x and y data of the line x_line, y_line = line.get_data() - # Fill the area under the curve for values below the international poverty line + # interpolate=True extends the fill to the exact x where the `where` + # condition flips, rather than ending at the nearest KDE grid point. kde_plot.fill_between( x=x_line, y1=y_line, where=(x_line <= value), + interpolate=True, alpha=0.3, color=line.get_color(), ) From 29e58db5105f5bdfb38901e4b8934d28abc82c80 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 09:50:53 +0100 Subject: [PATCH 23/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20pen=5Fparade:?= =?UTF-8?q?=20align=20bracket=20caps=20with=20poverty=20fills?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use raw (unrounded) reference values for positioning so the world median bracket lands at p=50 and matches the rounded $289 shown in labels. Build each poverty-band fill polygon with the exact crossing point appended, because matplotlib's interpolate=True doesn't apply when y1=0 is constant. --- ...26_survey_True_log_True_fill_False_pen.svg | 76 +++++++++---------- ...6_survey_False_log_False_fill_True_pen.svg | 58 +++++++------- .../distribution_generator.py | 46 +++++++---- 3 files changed, 99 insertions(+), 81 deletions(-) diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index 303de2f6..d461679e 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T09:01:49.830872 + 2026-05-22T09:47:41.349925 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 6be68f0f..bc7fa431 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T09:01:49.729480 + 2026-05-22T09:47:41.251852 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -934,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imagea60992c782" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 9c298ea9..1d666511 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1517,8 +1517,15 @@ def pen_parade( y_at_cut = None y_at_fade_floor = None + # Keep raw float values for POSITIONING (bracket caps, dotted reference lines, + # and fill crossings all land on the curve at the semantically meaningful + # percentile — e.g. the world median ends up at p=50, not p≈49.93). The + # f-string `.{dollar_decimals}f` formatting in each label rounds for DISPLAY + # (e.g. $289.50 → "$289"), so labels still match the rounded numbers shown + # elsewhere in OWID's online data. + # Define world mean - world_mean_year = ( + world_mean_year = float( df_main_indicators.loc[ (df_main_indicators["country"] == "World") & (df_main_indicators["year"] == year), @@ -1528,7 +1535,7 @@ def pen_parade( ) # Define world median - world_median_year = ( + world_median_year = float( df_main_indicators.loc[ (df_main_indicators["country"] == "World") & (df_main_indicators["year"] == year), @@ -1538,7 +1545,7 @@ def pen_parade( ) # Define the 90th percentile of the world - world_90th_percentile = ( + world_90th_percentile = float( df_main_indicators.loc[ (df_main_indicators["country"] == "World") & (df_main_indicators["year"] == year), @@ -1548,7 +1555,7 @@ def pen_parade( ) # Define the 99th percentile of the world - world_99th_percentile = ( + world_99th_percentile = float( df_main_indicators.loc[ (df_main_indicators["country"] == "World") & (df_main_indicators["year"] == year), @@ -1591,32 +1598,41 @@ def pen_parade( reference_ticks: list[tuple[float, str]] = [] if add_lines: + # Sorted (x, y) arrays for the curve — shared by the fill polygons, + # axhline_over_curve, and the bracket loop so they all interpolate + # against the same data. + ref_sorted = data_year.sort_values(x).reset_index(drop=True) + ref_xs = ref_sorted[x].to_numpy() + ref_ys = ref_sorted[y].to_numpy() + # Poverty bands shaded in the same blue as the main fill — one per poverty # line where the curve sits below that threshold. Overlapping fills stack # their alphas, deepening the blue as the poverty line gets stricter. - x_data = data_year[x].to_numpy() - y_data = data_year[y].to_numpy() + # We build each polygon with the exact crossing point appended, because + # matplotlib's fill_between `interpolate=True` only kicks in when y1 and + # y2 actually cross — with y1=0 the curves never meet, so the fill would + # otherwise snap to the last integer percentile instead of the crossing. poverty_fill_color = sns.color_palette("deep")[0] for poverty_y in ( POVERTY_LINE_HIGH_INCOME * period_factor, world_median_year, ipl, ): + x_cross = interpolate_x_at_y(ref_xs, ref_ys, float(poverty_y)) + if x_cross is None: + continue + below_mask = ref_ys < poverty_y + fill_xs = np.concatenate([ref_xs[below_mask], [x_cross]]) + fill_ys = np.concatenate([ref_ys[below_mask], [poverty_y]]) line_plot.fill_between( - x_data, + fill_xs, 0, - y_data, - where=(y_data <= poverty_y), + fill_ys, alpha=0.3, color=poverty_fill_color, - interpolate=True, linewidth=0, ) - ref_sorted = data_year.sort_values(x).reset_index(drop=True) - ref_xs = ref_sorted[x].to_numpy() - ref_ys = ref_sorted[y].to_numpy() - def axhline_over_curve(y_value): """Dotted reference line at y_value, but only over the filled curve area (from where the curve crosses y_value to the right edge), so the @@ -1719,7 +1735,7 @@ def display_name(country: str) -> str: ] if country_rows.empty: continue - country_medians_lookup[country_name] = ( + country_medians_lookup[country_name] = float( country_rows.sort_values("year")["median"].iloc[-1] * period_factor ) From e0d87e7abe319497205fb28ec6228b2a5a377564 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 09:59:37 +0100 Subject: [PATCH 24/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20Remove=20comme?= =?UTF-8?q?nted-out=20synthetic=20data=20generation=20code=20for=20clarity?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../distribution_generator.py | 226 ------------------ 1 file changed, 226 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 1d666511..a734855e 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -451,157 +451,6 @@ def run() -> None: ) """ # end of block disabled while iterating on pen parade - # # For synthetic data - - # ( - # synthetic_data_uk_gapminder, - # generated_mean_uk_gapminder, - # generated_gini_uk_gapminder, - # target_mean_uk_gapminder, - # target_gini_uk_gapminder, - # ) = generate_synthetic_data_from_mean_gini( - # country="United Kingdom-Gapminder", - # year=1820, - # target_mean=3784.226727, - # target_gini=0.5845, - # ) - - # ( - # synthetic_data_uk_moatsos, - # generated_mean_uk_moatsos, - # generated_gini_uk_moatsos, - # target_mean_uk_moatsos, - # target_gini_uk_moatsos, - # ) = generate_synthetic_data_from_mean_gini( - # country="United Kingdom-Moatsos", - # year=1820, - # target_mean=1250.072, - # target_gini=0.5927, - # ) - # ( - # synthetic_data_uk_mpd_gapminder, - # generated_mean_uk_mpd_gapminder, - # generated_gini_uk_mpd_gapminder, - # target_mean_uk_mpd_gapminder, - # target_gini_uk_mpd_gapminder, - # ) = generate_synthetic_data_from_mean_gini( - # country="United Kingdom-MPD-Gapminder", - # year=1820, - # target_mean=3306, - # target_gini=0.5845, - # ) - # ( - # synthetic_data_uk_mpd_moatsos, - # generated_mean_uk_mpd_moatsos, - # generated_gini_uk_mpd_moatsos, - # target_mean_uk_mpd_moatsos, - # target_gini_uk_mpd_moatsos, - # ) = generate_synthetic_data_from_mean_gini( - # country="United Kingdom-MPD-Moatsos", - # year=1820, - # target_mean=3306, - # target_gini=0.5927, - # ) - - # ( - # synthetic_data_sweden_gapminder, - # generated_mean_sweden_gapminder, - # generated_gini_sweden_gapminder, - # target_mean_sweden_gapminder, - # target_gini_sweden_gapminder, - # ) = generate_synthetic_data_from_mean_gini( - # country="Sweden-Gapminder", - # year=1820, - # target_mean=1619.685668, - # target_gini=0.4956, - # ) - # ( - # synthetic_data_sweden_moatsos, - # generated_mean_sweden_moatsos, - # generated_gini_sweden_moatsos, - # target_mean_sweden_moatsos, - # target_gini_sweden_moatsos, - # ) = generate_synthetic_data_from_mean_gini( - # country="Sweden-Moatsos", - # year=1820, - # target_mean=445.4332, - # target_gini=0.5544166, - # ) - # ( - # synthetic_data_sweden_mpd_gapminder, - # generated_mean_sweden_mpd_gapminder, - # generated_gini_sweden_mpd_gapminder, - # target_mean_sweden_mpd_gapminder, - # target_gini_sweden_mpd_gapminder, - # ) = generate_synthetic_data_from_mean_gini( - # country="Sweden-MPD-Gapminder", - # year=1820, - # target_mean=1415, - # target_gini=0.4956, - # ) - # ( - # synthetic_data_sweden_mpd_moatsos, - # generated_mean_sweden_mpd_moatsos, - # generated_gini_sweden_mpd_moatsos, - # target_mean_sweden_mpd_moatsos, - # target_gini_sweden_mpd_moatsos, - # ) = generate_synthetic_data_from_mean_gini( - # country="Sweden-MPD-Moatsos", - # year=1820, - # target_mean=1415, - # target_gini=0.5544166, - # ) - - # distributional_plots( - # data=synthetic_data_uk_gapminder, - # df_main_indicators=None, - # x="avg", - # weights=None, - # log_scale=True, - # multiple="layer", - # hue="country", - # hue_order=["United Kingdom-Gapminder"], - # years=[1820], - # fill=False, - # legend=False, - # common_norm=False, - # period="day", - # add_ipl=None, - # add_world_mean=None, - # add_world_median=None, - # add_multiple_lines_day=[2.15 * 365], - # gridsize=GRIDSIZE_HIGHER_RESOLUTION, - # width=1500, - # height=400, - # survey_based=False, - # add_fade_in_tails=False, - # ) - - # distributional_plots( - # data=synthetic_data_sweden_mpd_moatsos, - # df_main_indicators=None, - # x="avg", - # weights=None, - # log_scale=True, - # multiple="layer", - # hue="country", - # hue_order=["Sweden-MPD-Moatsos"], - # years=[1820], - # fill=False, - # legend=False, - # common_norm=False, - # period="day", - # add_ipl=None, - # add_world_mean=None, - # add_world_median=None, - # add_multiple_lines_day=[1.90 * 365], - # gridsize=GRIDSIZE_HIGHER_RESOLUTION, - # width=1500, - # height=400, - # survey_based=False, - # add_fade_in_tails=False, - # ) - def distributional_plots( data: pd.DataFrame, @@ -2121,80 +1970,5 @@ def draw_complete_area_under_curve( return None -####################################### -# SYNTHETIC DATA GENERATION -####################################### - - -def generate_synthetic_data_from_mean_gini( - country: str, year: int, target_mean, target_gini, size=100_000_000, seed=2_000 -): - """ - Generate synthetic data from a lognormal distribution that approximates a given mean and Gini coefficient. - - Parameters: - target_mean (float): Desired mean of the synthetic distribution. - target_gini (float): Desired Gini coefficient of the distribution. - size (int): Number of samples to generate (default: 1000). - seed (int or None): Random seed for reproducibility (default: None). - - Returns: - np.ndarray: Synthetic data array. - """ - - # Set random seed if provided - if seed is not None: - np.random.seed(seed) - - # Gini of a lognormal: G = 2 * Φ(σ/√2) - 1 - def lognormal_gini(sigma: float) -> float: - return 2 * norm.cdf(sigma / np.sqrt(2)) - 1 - - # Objective function to minimize: match mean and Gini - def objective(params: np.ndarray) -> float: - mu, sigma = params - mean = np.exp(mu + sigma**2 / 2) - gini = lognormal_gini(sigma) - # Weighted sum to prioritize Gini matching (since mean is easier to match) - return 1 * (mean - target_mean) ** 2 + 100 * (gini - target_gini) ** 2 - - def gini(array: np.ndarray) -> float: - # Use the definition for population Gini - array = np.sort(array) - n = array.size - index = np.arange(1, n + 1) - return (2 * np.sum(index * array)) / (n * np.sum(array)) - (n + 1) / n - - # Initial guess - initial_guess = [np.log(target_mean), 1.0] - - # Use a deterministic optimizer and tighter tolerance for reproducibility - result = minimize( - objective, - initial_guess, - bounds=[(None, None), (1e-6, None)], - method="L-BFGS-B", - options={"ftol": 1e-12, "gtol": 1e-8, "maxiter": 1e12}, - ) - mu_opt, sigma_opt = result.x - - # Use a fixed random seed for reproducibility - rng = np.random.default_rng(seed) - synthetic_data = rng.lognormal(mean=mu_opt, sigma=sigma_opt, size=size) - - # Calculate the mean and Gini of the generated data - generated_mean = np.mean(synthetic_data) - generated_gini = gini(synthetic_data) - - # Make synthetic data a dataframe, with the column name "avg" - synthetic_data = pd.DataFrame(synthetic_data, columns=["avg"]) - - # Add the columns "country" and "year" - synthetic_data["country"] = country - synthetic_data["year"] = year - - return synthetic_data, generated_mean, generated_gini, target_mean, target_gini - - if __name__ == "__main__": run() From 0967575757ee99d1829d1420b1f971ab9761b89a Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 10:27:41 +0100 Subject: [PATCH 25/38] Refactor code structure for improved readability and maintainability --- ..._common_norm_False_multiple_areas_none.svg | 20170 ++++++++++++++++ ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 1231 + ..._common_norm_False_multiple_areas_none.svg | 1204 + ..._common_norm_False_multiple_areas_none.svg | 1196 + ..._common_norm_False_multiple_areas_none.svg | 1176 + ..._common_norm_False_multiple_areas_none.svg | 1217 + ..._common_norm_False_multiple_areas_none.svg | 1190 + ..._common_norm_False_multiple_areas_none.svg | 1203 + ..._common_norm_False_multiple_areas_none.svg | 1176 + ..._common_norm_False_multiple_areas_none.svg | 1189 + ..._common_norm_False_multiple_areas_none.svg | 1155 + ..._multiple_layer_common_norm_False_rows.svg | 13965 +++++++++++ ..._multiple_layer_common_norm_False_rows.svg | 14377 +++++++++++ ..._common_norm_False_multiple_areas_none.svg | 5667 +++++ ..._common_norm_False_multiple_areas_3_30.svg | 92 +- ..._common_norm_False_multiple_areas_3_30.svg | 92 +- ..._common_norm_False_multiple_areas_3_30.svg | 3043 +++ ..._common_norm_False_multiple_areas_none.svg | 1224 + ..._common_norm_False_multiple_areas_none.svg | 1197 + ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 3731 +++ ..._norm_False_multiple_areas_3_10_30_100.svg | 6858 ++++++ ...k_common_norm_True_multiple_areas_none.svg | 3341 +++ .../distribution_generator.py | 26 +- 25 files changed, 85675 insertions(+), 171 deletions(-) create mode 100644 PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg create mode 100644 PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg create mode 100644 PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg create mode 100644 PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg create mode 100644 PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg create mode 100644 PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg create mode 100644 PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..60d59004 --- /dev/null +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,20170 @@ + + + + + + + + 2026-05-22T10:03:29.074476 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Country + + + + + + Burundi + + + + + + Ethiopia + + + + + + Syria + + + + + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index d461679e..c3184014 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T09:47:41.349925 + 2026-05-22T10:03:31.421980 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..877bf8d0 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1231 @@ + + + + + + + + 2026-05-22T10:03:29.324982 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Country + + + + + + Denmark + + + + + + Democratic Republic of Congo + + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..ddeee631 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1204 @@ + + + + + + + + 2026-05-22T10:03:29.401039 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + Denmark (2023) + + + Democratic Republic of Congo (2020) + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..0761bf26 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1196 @@ + + + + + + + + 2026-05-22T10:03:29.168171 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Country + + + + + + Denmark + + + + + + Ethiopia + + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..f5cffadc --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1176 @@ + + + + + + + + 2026-05-22T10:03:29.242703 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + Denmark (2023) + + + Ethiopia (2021) + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..47e07e68 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1217 @@ + + + + + + + + 2026-05-22T10:03:29.483625 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Country + + + + + + Denmark + + + + + + Madagascar + + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..faf02f25 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1190 @@ + + + + + + + + 2026-05-22T10:03:29.558047 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + Denmark (2023) + + + Madagascar (2021) + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..a83be7e7 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1203 @@ + + + + + + + + 2026-05-22T10:03:29.643170 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Country + + + + + + Denmark + + + + + + Niger + + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..9bd1f5d3 --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1176 @@ + + + + + + + + 2026-05-22T10:03:29.717278 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + Denmark (2023) + + + Niger (2021) + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..e0f11d3d --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1189 @@ + + + + + + + + 2026-05-22T10:03:29.799766 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Country + + + + + + Denmark + + + + + + Syria + + + + + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..9379cd9c --- /dev/null +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1155 @@ + + + + + + + + 2026-05-22T10:03:30.051443 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + Denmark (2023) + + + Syria (2022) + + + + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg new file mode 100644 index 00000000..b8075f7a --- /dev/null +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -0,0 +1,13965 @@ + + + + + + + + 2026-05-22T10:03:30.466578 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $2.59 The poverty line in Ethiopia* + + + Ethiopia + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $3.83 The poverty line in Bangladesh* + + + Bangladesh + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $4.29 The poverty line in Vietnam* + + + Vietnam + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $8.70 The poverty line in Turkey* + + + Turkey + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $27.10 The poverty line in United States* + + + International + Poverty Line: + $3.00 + + + World mean: + $22.30 + + + World median: + $9.65 + + + United States + + + + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg new file mode 100644 index 00000000..49fc6577 --- /dev/null +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -0,0 +1,14377 @@ + + + + + + + + 2026-05-22T10:03:30.715872 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $2.59 The poverty line in Ethiopia* + + + Consumption data from 2021 + + + Ethiopia + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $3.83 The poverty line in Bangladesh* + + + Consumption data from 2022 + + + Bangladesh + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $4.29 The poverty line in Vietnam* + + + Consumption data from 2022 + + + Vietnam + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $8.70 The poverty line in Turkey* + + + Income data from 2023 + + + Turkey + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $27.10 The poverty line in United States* + + + International + Poverty Line: + $3.00 + + + Income data from 2024 + + + United States + + + + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..5e907df9 --- /dev/null +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,5667 @@ + + + + + + + + 2026-05-22T10:03:28.942972 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Madagascar (2021) + + + United Kingdom (2021) + + + + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 13297e7a..1e57848b 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,11 +6,11 @@ - 2026-05-21T14:04:57.432715 + 2026-05-22T10:03:37.030749 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,187 +126,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -317,7 +317,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 150fe650..13b4d7aa 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,11 +6,11 @@ - 2026-05-21T14:04:57.498911 + 2026-05-22T10:03:37.084599 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,187 +126,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -317,7 +317,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg new file mode 100644 index 00000000..606bbbaa --- /dev/null +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -0,0 +1,3043 @@ + + + + + + + + 2026-05-22T10:03:38.486598 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (2026) + + + + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..7aad10f1 --- /dev/null +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1224 @@ + + + + + + + + 2026-05-22T10:03:30.140498 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Country + + + + + + United States + + + + + + Burundi + + + + + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg new file mode 100644 index 00000000..26b2bfa6 --- /dev/null +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -0,0 +1,1197 @@ + + + + + + + + 2026-05-22T10:03:30.209790 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + United States (2024) + + + Burundi (2020) + + + + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index bc7fa431..20981ae3 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T09:47:41.251852 + 2026-05-22T10:03:31.337299 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="image58ccd3662c" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg new file mode 100644 index 00000000..0f3cd338 --- /dev/null +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -0,0 +1,3731 @@ + + + + + + + + 2026-05-22T10:03:28.781125 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Country + + + + + + World + + + + + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg new file mode 100644 index 00000000..1cd84613 --- /dev/null +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -0,0 +1,6858 @@ + + + + + + + + 2026-05-22T10:03:28.857874 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Country + + + + + + World + + + + + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg new file mode 100644 index 00000000..82c6f8dd --- /dev/null +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -0,0 +1,3341 @@ + + + + + + + + 2026-05-22T10:03:31.268871 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International Poverty Line: $3.00 + + + World mean: $22.30 + + + World median: $9.65 + + + + + + + Region + + + + + + East Asia and Pacific + + + + + + Europe and Central Asia + + + + + + Latin America and Caribbean + + + + + + Middle East, North Africa, Afghanistan and Pakistan + + + + + + North America + + + + + + South Asia + + + + + + Sub-Saharan Africa + + + + + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index a734855e..0e86f9e6 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -101,13 +101,12 @@ def run() -> None: - # Skipped while iterating on pen parade — re-enable along with the disabled plot blocks below. - # df_thousand_bins = pd.read_feather(THOUSAND_BINS_URL) - # df_thousand_bins_historical = pd.read_feather(THOUSAND_BINS_HISTORICAL_URL) - # df_thousand_bins_historical_all_lognormal = pd.read_feather( - # THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL - # ) - # df_national_lines = pd.read_feather(NATIONAL_LINES_URL) + df_thousand_bins = pd.read_feather(THOUSAND_BINS_URL) + df_thousand_bins_historical = pd.read_feather(THOUSAND_BINS_HISTORICAL_URL) + df_thousand_bins_historical_all_lognormal = pd.read_feather( + THOUSAND_BINS_HISTORICAL__ALL_LOGNORMAL_URL + ) + df_national_lines = pd.read_feather(NATIONAL_LINES_URL) # World Bank PIP dimensional tables → flat shapes the plotting code expects. # Percentiles: legacy table was filtered to ppp_version=2021; replicate by filtering here. @@ -168,11 +167,10 @@ def run() -> None: [df_main_indicators, country_extras], ignore_index=True ) - # Skipped while iterating on pen parade (no national-lines consumer enabled). - # df_national_lines.loc[ - # (df_national_lines["country"] == "United States"), - # "harmonized_national_poverty_line", - # ] = 27.10 + df_national_lines.loc[ + (df_national_lines["country"] == "United States"), + "harmonized_national_poverty_line", + ] = 27.10 # Set seaborn style and color palette sns.set_style("ticks") @@ -181,7 +179,6 @@ def run() -> None: # Show texts and not curves for annotations plt.rcParams["svg.fonttype"] = "none" - """ # disabled while iterating on pen parade — flip to delete this and the matching closer to re-enable # Plot global distribution, separating in two with the International Poverty Line for lines in POVERTY_LINES_AREA_GLOBAL: distributional_plots( @@ -358,7 +355,6 @@ def run() -> None: period="day", survey_based=False, ) - """ # end of block disabled while iterating on pen parade # Pen parades pen_parade( @@ -398,7 +394,6 @@ def run() -> None: preferred_welfare_type="income", ) - """ # disabled while iterating on pen parade — flip to delete this and the matching closer to re-enable # Historical data distributional_plots( data=df_thousand_bins_historical, @@ -449,7 +444,6 @@ def run() -> None: width=1150, height=220, ) - """ # end of block disabled while iterating on pen parade def distributional_plots( From dd05dbcd64baeebb75c4159c9f366fc608b18228 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 11:59:52 +0100 Subject: [PATCH 26/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20share=5Fx=5Faxis=20/=20share=5Fy=5Faxis=20param?= =?UTF-8?q?s=20for=20multi-year=20plots?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replace explicit x_axis_range tuple with share_x_axis: bool that auto-computes the union x-range across years in a pre-pass. - Add share_y_axis: bool that locks every per-year SVG to the same peak density. - Add row_by="year" to distributional_plots_per_row for one-country / multi-year stacked layouts. - Add filename_suffix to distinguish the Sweden lognormal output set. --- ..._common_norm_False_multiple_areas_none.svg | 124 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_none.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 82 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 78 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 74 +- ..._common_norm_False_multiple_areas_none.svg | 74 +- ..._multiple_layer_common_norm_False_rows.svg | 110 +- ..._multiple_layer_common_norm_False_rows.svg | 112 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 10950 ++++++++-------- ...rm_False_multiple_areas_3_30_lognormal.svg | 5771 ++++++++ ..._common_norm_False_multiple_areas_3_30.svg | 9501 +++++++------- ...rm_False_multiple_areas_3_30_lognormal.svg | 5045 +++++++ ..._common_norm_False_multiple_areas_3_30.svg | 5904 +++++---- ...rm_False_multiple_areas_3_30_lognormal.svg | 3065 +++++ .../Sweden_per_year_row_log_True.svg | 734 ++ ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 106 +- .../distribution_generator.py | 316 +- 29 files changed, 29136 insertions(+), 13968 deletions(-) create mode 100644 PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg create mode 100644 PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg create mode 100644 PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg create mode 100644 PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 60d59004..f608e8e8 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.074476 + 2026-05-22T11:57:58.656886 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index c3184014..3a892ae9 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:31.421980 + 2026-05-22T11:58:01.542853 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 877bf8d0..f1406a9a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.324982 + 2026-05-22T11:57:58.957143 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index ddeee631..0251c007 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.401039 + 2026-05-22T11:57:59.045527 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,194 +146,194 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -344,7 +344,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0761bf26..b169bd5d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.168171 + 2026-05-22T11:57:58.771157 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,152 +146,152 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -302,7 +302,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f5cffadc..873faf61 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.242703 + 2026-05-22T11:57:58.860868 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 47e07e68..eb7f44ad 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.483625 + 2026-05-22T11:57:59.154978 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,173 +146,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -323,7 +323,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index faf02f25..6c3c6bad 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.558047 + 2026-05-22T11:57:59.242284 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index a83be7e7..b55f0c91 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.643170 + 2026-05-22T11:57:59.365516 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,159 +146,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -309,7 +309,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 9bd1f5d3..dadf18d4 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.717278 + 2026-05-22T11:57:59.441551 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index e0f11d3d..4c73c7dd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:29.799766 + 2026-05-22T11:57:59.637349 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,7 +295,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 9379cd9c..c9a44f45 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:30.051443 + 2026-05-22T11:57:59.995724 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,7 +295,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index b8075f7a..44f34060 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:30.466578 + 2026-05-22T11:58:00.479361 image/svg+xml @@ -74,7 +74,7 @@ z - - + - - + @@ -2912,7 +2912,7 @@ z - - + - - + @@ -5590,7 +5590,7 @@ z - - + - - + @@ -8152,7 +8152,7 @@ z - - + - - + @@ -10664,12 +10664,12 @@ z - - + @@ -10679,7 +10679,7 @@ L 0 3.5 - + @@ -10689,7 +10689,7 @@ L 0 3.5 - + @@ -10699,7 +10699,7 @@ L 0 3.5 - + @@ -10709,7 +10709,7 @@ L 0 3.5 - + @@ -10719,7 +10719,7 @@ L 0 3.5 - + @@ -10729,7 +10729,7 @@ L 0 3.5 - + @@ -10739,7 +10739,7 @@ L 0 3.5 - + @@ -10749,7 +10749,7 @@ L 0 3.5 - + @@ -10759,7 +10759,7 @@ L 0 3.5 - + @@ -10769,159 +10769,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10932,7 +10932,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index 49fc6577..5d693b5e 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:30.715872 + 2026-05-22T11:58:00.743990 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + @@ -3046,7 +3046,7 @@ z - - + - - + @@ -5851,7 +5851,7 @@ z - - + - - + @@ -8530,7 +8530,7 @@ z - - + - - + @@ -11145,12 +11145,12 @@ z - - + @@ -11160,7 +11160,7 @@ L 0 3.5 - + @@ -11170,7 +11170,7 @@ L 0 3.5 - + @@ -11180,7 +11180,7 @@ L 0 3.5 - + @@ -11190,7 +11190,7 @@ L 0 3.5 - + @@ -11200,7 +11200,7 @@ L 0 3.5 - + @@ -11210,7 +11210,7 @@ L 0 3.5 - + @@ -11220,7 +11220,7 @@ L 0 3.5 - + @@ -11230,7 +11230,7 @@ L 0 3.5 - + @@ -11240,7 +11240,7 @@ L 0 3.5 - + @@ -11250,166 +11250,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11420,7 +11420,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5e907df9..272340ea 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:28.942972 + 2026-05-22T11:57:58.440806 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 1e57848b..7880e67f 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T10:03:37.030749 + 2026-05-22T11:58:09.801011 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,5722 +41,5726 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - - - + + + $500 + - + + + $1000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - + - - + - - + - - Sweden (1820) + + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg new file mode 100644 index 00000000..b20fbe47 --- /dev/null +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -0,0 +1,5771 @@ + + + + + + + + 2026-05-22T11:58:14.501268 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (1820) + + + + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 13b4d7aa..169e2b66 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T10:03:37.084599 + 2026-05-22T11:58:09.874872 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,4996 +41,5003 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - - - + + + $500 + - + + + $1000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - + - - + - - + - - Sweden (1920) + + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg new file mode 100644 index 00000000..b767b4cc --- /dev/null +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -0,0 +1,5045 @@ + + + + + + + + 2026-05-22T11:58:14.578685 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (1920) + + + + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 606bbbaa..004b11d6 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T10:03:38.486598 + 2026-05-22T11:58:09.951136 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,3002 +41,3386 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - - - + + + $500 + - + + + $1000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - + - - + - - Sweden (2026) + + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg new file mode 100644 index 00000000..ddaa526b --- /dev/null +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -0,0 +1,3065 @@ + + + + + + + + 2026-05-22T11:58:14.658788 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (2026) + + + + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg new file mode 100644 index 00000000..08edf037 --- /dev/null +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -0,0 +1,734 @@ + + + + + + + + 2026-05-22T11:58:12.814935 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (1820) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (1920) + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) + + + + + + + + + + + Sweden (2026) + + + + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 7aad10f1..884aecfd 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:30.140498 + 2026-05-22T11:58:00.099561 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 26b2bfa6..b7d070fd 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:30.209790 + 2026-05-22T11:58:00.178857 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 20981ae3..8d15a6a3 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:31.337299 + 2026-05-22T11:58:01.428789 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="image47ab022269" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index 0f3cd338..7c496000 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:28.781125 + 2026-05-22T11:57:58.223764 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 1cd84613..9fb8192c 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:28.857874 + 2026-05-22T11:57:58.301872 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 82c6f8dd..5e75eb8f 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T10:03:31.268871 + 2026-05-22T11:58:01.348904 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 0e86f9e6..da793482 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -394,7 +394,8 @@ def run() -> None: preferred_welfare_type="income", ) - # Historical data + # Historical data — Option A: three separate SVGs (1820, 1920, 2026) that all + # share a y-limit so peak heights are visually comparable across years. distributional_plots( data=df_thousand_bins_historical, df_main_indicators=None, @@ -415,11 +416,42 @@ def run() -> None: add_world_mean=None, add_world_median=None, add_multiple_lines_day=[3, 30], - x_axis_range=(0.05, 300), width=1150, height=220, + share_y_axis=True, + share_x_axis=True, ) + # Historical data — Option B: single SVG with all three years stacked, + # sharing both x and y axes (via row_by="year"). + distributional_plots_per_row( + data=df_thousand_bins_historical, + df_main_indicators=None, + x="avg", + weights="pop", + log_scale=True, + multiple="layer", + hue="country", + hue_order=["Sweden"], + years=[1820, 1920, LATEST_YEAR], + fill=False, + common_norm=False, + gridsize=GRIDSIZE_HIGHER_RESOLUTION, + period="day", + survey_based=False, + add_ipl=None, + add_world_mean=None, + add_world_median=None, + width=1150, + height=220, + row_by="year", + ) + + # Same years from the all-lognormal companion dataset. Only the 2026 row + # actually differs from df_thousand_bins_historical; 1820 and 1920 are + # byte-identical between the two datasets but we render them anyway so the + # _lognormal SVGs are a complete drop-in set that shares its own y-max and + # x-range pre-pass (independent of the mix dataset). distributional_plots( data=df_thousand_bins_historical_all_lognormal, df_main_indicators=None, @@ -429,7 +461,7 @@ def run() -> None: multiple="layer", hue="country", hue_order=["Sweden"], - years=[LATEST_YEAR], + years=[1820, 1920, LATEST_YEAR], fill=False, legend=False, common_norm=False, @@ -440,9 +472,11 @@ def run() -> None: add_world_mean=None, add_world_median=None, add_multiple_lines_day=[3, 30], - x_axis_range=(0.05, 300), width=1150, height=220, + share_y_axis=True, + share_x_axis=True, + filename_suffix="_lognormal", ) @@ -472,10 +506,23 @@ def distributional_plots( height: int = HEIGHT, add_fade_in_tails: bool = True, percentiles_to_fade: List[float] = [1, 99], - x_axis_range: tuple = None, + share_y_axis: bool = False, + share_x_axis: bool = False, + filename_suffix: str = "", ) -> None: """ Plot distributional data with seaborn, with multiple options for customization. + + ``share_y_axis``: when True, run a hidden pre-pass across all `years` to find + the maximum KDE density and lock every per-year figure's y-axis to that value. + Required if you want the saved SVGs to be visually comparable — without it, + matplotlib auto-scales each year independently and hides the inequality signal + (narrower distributions look the same height as wider ones). + + ``share_x_axis``: when True, the pre-pass also computes the union of x-values + across years (after fading tails) and uses that as the shared x range — + applied to KDE clip, the data filter, and the figure's xlim — so every + per-year SVG shares the same horizontal scale. """ # Filter the data with the hue and hue_order @@ -529,6 +576,66 @@ def distributional_plots( # Define IPL for the period ipl = INTERNATIONAL_POVERTY_LINE * period_factor + # Optional pre-pass: pre-compute the union x-range and/or the max KDE density + # across years so per-year figures can share x / y limits. + x_axis_range: tuple | None = None # set by the share_x_axis pre-pass below + shared_y_max: float | None = None + if share_x_axis or share_y_axis: + def _filter_year(year_value): + if survey_based: + sub = data[data["reference_year"] == year_value] + else: + sub = data[data["year"] == year_value] + if add_fade_in_tails: + if "percentile" in sub.columns: + pq, bounds = "percentile", percentiles_to_fade + elif "quantile" in sub.columns: + pq, bounds = "quantile", [p * 10 for p in percentiles_to_fade] + else: + return sub + sub = sub[(sub[pq] > bounds[0]) & (sub[pq] < bounds[1])] + return sub + + # Step 1: compute shared x range from data if requested + if share_x_axis: + x_min, x_max = float("inf"), float("-inf") + for year in years: + sub = _filter_year(year) + if len(sub): + x_min = min(x_min, float(sub[x].min())) + x_max = max(x_max, float(sub[x].max())) + if x_min < float("inf"): + x_axis_range = (x_min, x_max) + + # Step 2: compute shared y max if requested (uses x_axis_range from step 1) + if share_y_axis: + if log_scale and x_axis_range is not None: + clip_pre = (np.log(x_axis_range[0]), np.log(x_axis_range[1])) + else: + clip_pre = x_axis_range + shared_y_max = 0.0 + for year in years: + data_year_pre = _filter_year(year) + if x_axis_range is not None: + data_year_pre = data_year_pre[ + (data_year_pre[x] >= x_axis_range[0]) + & (data_year_pre[x] <= x_axis_range[1]) + ] + if len(data_year_pre) == 0: + continue + fig_pre, ax_pre = plt.subplots() + sns.kdeplot( + data=data_year_pre, x=x, weights=weights, fill=False, + log_scale=log_scale, hue=hue, hue_order=hue_order, + multiple=multiple, legend=False, common_norm=common_norm, + gridsize=gridsize, clip=clip_pre, ax=ax_pre, + ) + for line in ax_pre.lines: + ys = np.asarray(line.get_data()[1]) + if ys.size: + shared_y_max = max(shared_y_max, float(np.nanmax(ys))) + plt.close(fig_pre) + for year in years: if survey_based: data_year = data[data["reference_year"] == year].reset_index(drop=True) @@ -577,15 +684,8 @@ def distributional_plots( & (data_year[percentile_or_quantile] < percentiles_quantiles_to_fade[1]) ] - # Filter data by x_axis_range if specified - # This ensures KDE calculation only uses data within the specified range - if x_axis_range is not None: - data_year = data_year[ - (data_year[x] >= x_axis_range[0]) & (data_year[x] <= x_axis_range[1]) - ].reset_index(drop=True) - - # Determine clip parameter for KDE - # When log_scale=True, KDE is computed in log-space, so clip needs log-transformed values + # KDE clip in log space when log_scale=True; pinned to the shared x range so + # each year's curve extends across the same horizontal extent. if x_axis_range is not None and log_scale: clip_param = (np.log(x_axis_range[0]), np.log(x_axis_range[1])) else: @@ -728,17 +828,7 @@ def distributional_plots( if log_scale: # Customize x-axis ticks to show 1, 2, 5, 10, 20, 50, 100, etc. - # kde_plot.set(xscale="log") - # Filter ticks to only include values within x_axis_range if specified - if x_axis_range is not None: - filtered_ticks = [ - tick - for tick in log_ticks - if x_axis_range[0] <= tick <= x_axis_range[1] - ] - kde_plot.set_xticks(filtered_ticks) - else: - kde_plot.set_xticks(log_ticks) + kde_plot.set_xticks(log_ticks) # Add dollar sign prefix to tick labels with integer formatting kde_plot.get_xaxis().set_major_formatter( plt.FuncFormatter(lambda x, p: f"${x:.0f}") @@ -760,6 +850,10 @@ def distributional_plots( kde_plot.spines["bottom"].set_visible(False) kde_plot.spines["left"].set_visible(False) + # Lock y-axis to the shared max so the per-year SVGs can be visually compared. + if shared_y_max is not None and shared_y_max > 0: + kde_plot.set_ylim(0, shared_y_max * 1.05) + # Add a base line for each plot in the x axis plt.axhline(y=0, color="gray", linewidth=0.5) @@ -771,16 +865,9 @@ def distributional_plots( fig.set_size_inches(width / 100, height / 100) - # When using fixed axis range, use fixed subplot adjustments for perfect alignment - if x_axis_range is not None: - plt.subplots_adjust(left=0.04, right=0.96, top=0.95, bottom=0.22) - - # Use bbox_inches="tight" only when x_axis_range is not specified - # to maintain alignment when using fixed axis ranges - save_kwargs = {} if x_axis_range is not None else {"bbox_inches": "tight"} fig.savefig( - f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_multiple_areas_{filename_multiple_areas}.svg", - **save_kwargs, + f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_multiple_areas_{filename_multiple_areas}{filename_suffix}.svg", + bbox_inches="tight", ) plt.close(fig) @@ -789,7 +876,7 @@ def distributional_plots( def distributional_plots_per_row( data: pd.DataFrame, - df_main_indicators: pd.DataFrame, + df_main_indicators: pd.DataFrame | None, x: str, weights: str, log_scale: bool, @@ -813,11 +900,28 @@ def distributional_plots_per_row( height: int = HEIGHT, add_fade_in_tails: bool = True, percentiles_to_fade: List[float] = [1, 99], - x_axis_range: tuple = None, + row_by: Literal["country", "year"] = "country", ) -> None: """ Plot distributional data with seaborn, with each distribution in a separate row. + + ``row_by="country"`` (default): one figure per year, rows = countries in + ``hue_order``. Use this when you want to compare a fixed set of countries at + a single moment. + + ``row_by="year"``: one figure with rows = years, country fixed to + ``hue_order[0]``. Axes share both x and y, so peak heights are directly + comparable across years. Use this when comparing one country across time. """ + if row_by == "year": + _distributional_plots_year_rows( + data=data, x=x, weights=weights, country=hue_order[0], years=years, + log_scale=log_scale, gridsize=gridsize, period=period, + add_multiple_lines_day=None, width=width, height=height, + add_fade_in_tails=add_fade_in_tails, + percentiles_to_fade=percentiles_to_fade, + ) + return None # Filter the data with the hue and hue_order if hue_order is not None: @@ -864,6 +968,11 @@ def distributional_plots_per_row( # Define IPL for the period ipl = INTERNATIONAL_POVERTY_LINE * period_factor + # row_by="country" needs the world reference lookups; row_by="year" returned earlier. + assert df_main_indicators is not None, ( + "distributional_plots_per_row(row_by='country') requires df_main_indicators" + ) + for year in years: if survey_based: data_year = data[data["reference_year"] == year].reset_index(drop=True) @@ -930,21 +1039,6 @@ def distributional_plots_per_row( ) ] - # Filter data by x_axis_range if specified - # This ensures KDE calculation only uses data within the specified range - if x_axis_range is not None: - country_data = country_data[ - (country_data[x] >= x_axis_range[0]) - & (country_data[x] <= x_axis_range[1]) - ].reset_index(drop=True) - - # Determine clip parameter for KDE - # When log_scale=True, KDE is computed in log-space, so clip needs log-transformed values - if x_axis_range is not None and log_scale: - clip_param = (np.log(x_axis_range[0]), np.log(x_axis_range[1])) - else: - clip_param = x_axis_range - # Plot a kde with seaborn kde_plot = sns.kdeplot( data=country_data, @@ -955,16 +1049,8 @@ def distributional_plots_per_row( ax=ax, common_norm=common_norm, gridsize=gridsize, - clip=clip_param, ) - # Set x-axis range immediately after plotting, before drawing areas - # This ensures all subsequent drawing operations respect the axis limits - if x_axis_range is not None: - ax.set_xlim(x_axis_range[0], x_axis_range[1]) - # Also set margins to 0 to prevent automatic padding - ax.margins(x=0) - if not fill: draw_complete_area_under_curve(kde_plot=kde_plot) @@ -1090,16 +1176,7 @@ def distributional_plots_per_row( if log_scale: # Customize x-axis ticks to show 1, 2, 5, 10, 20, 50, 100, etc. ax.set_xscale("log") - # Filter ticks to only include values within x_axis_range if specified - if x_axis_range is not None: - filtered_ticks = [ - tick - for tick in log_ticks - if x_axis_range[0] <= tick <= x_axis_range[1] - ] - ax.set_xticks(filtered_ticks) - else: - ax.set_xticks(log_ticks) + ax.set_xticks(log_ticks) # Add dollar sign prefix to tick labels with integer formatting ax.get_xaxis().set_major_formatter( plt.FuncFormatter(lambda x, p: f"${x:.0f}") @@ -1128,29 +1205,110 @@ def distributional_plots_per_row( axis="x", which="both", bottom=False, top=False, labelbottom=False ) - # Adjust layout and save the figure - if x_axis_range is not None: - # Use fixed subplot adjustments for perfect alignment - plt.subplots_adjust(left=0.04, right=0.96, top=0.98, bottom=0.20) - else: - plt.tight_layout() + plt.tight_layout() # Remove the clipping of the figure for o in fig.findobj(): o.set_clip_on(False) - # Use bbox_inches="tight" only when x_axis_range is not specified - # to maintain alignment when using fixed axis ranges - save_kwargs = {} if x_axis_range is not None else {"bbox_inches": "tight"} fig.savefig( f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_rows.svg", - **save_kwargs, + bbox_inches="tight", ) plt.close(fig) return None +def _distributional_plots_year_rows( + data: pd.DataFrame, + x: str, + weights: str, + country: str, + years: List[int], + log_scale: bool = True, + gridsize: int = 200, + period: Literal["day", "month", "year"] = "day", + add_multiple_lines_day: List[float] | None = None, + width: int = WIDTH, + height: int = HEIGHT, + add_fade_in_tails: bool = True, + percentiles_to_fade: List[float] = [1, 99], +) -> None: + """ + Private helper for ``distributional_plots_per_row(row_by="year")``: one country + across several years, one row per year, sharing both x and y axes. + """ + period_factor = cast(int, PERIOD_VALUES[period]["factor"]) + log_ticks = cast(List[int], PERIOD_VALUES[period]["log_ticks"]) + + data = data[data["country"] == country].copy() + data[x] = data[x] * period_factor + + fig, axes = plt.subplots( + nrows=len(years), ncols=1, + figsize=(width / 100, height / 100 * len(years)), + sharex=True, sharey=True, + ) + if len(years) == 1: + axes = [axes] + + for ax, year in zip(axes, years): + data_year = data[data["year"] == year] + if add_fade_in_tails: + if "percentile" in data_year.columns: + pq, bounds = "percentile", percentiles_to_fade + elif "quantile" in data_year.columns: + pq, bounds = "quantile", [p * 10 for p in percentiles_to_fade] + else: + pq = None + if pq: + data_year = data_year[ + (data_year[pq] > bounds[0]) & (data_year[pq] < bounds[1]) + ] + sns.kdeplot( + data=data_year, x=x, weights=weights, log_scale=log_scale, + gridsize=gridsize, ax=ax, fill=False, legend=False, + ) + if add_multiple_lines_day is not None: + for line_value in add_multiple_lines_day: + ax.axvline( + x=line_value * period_factor, color="lightgrey", linestyle=":", + linewidth=0.8, + ) + + ax.text( + x=data_year[x].median() if len(data_year) else 1.0, + y=ax.get_ylim()[0], + s=f"{country} ({year})", + color="black", verticalalignment="bottom", + horizontalalignment="center", fontsize=10, + ) + ax.set_ylabel("") + ax.yaxis.set_ticks([]) + for spine in ax.spines.values(): + spine.set_visible(False) + ax.axhline(y=0, color="gray", linewidth=0.5) + if ax is not axes[-1]: + ax.tick_params(axis="x", which="both", bottom=False, labelbottom=False) + + if log_scale: + axes[-1].set_xticks(log_ticks) + axes[-1].get_xaxis().set_major_formatter(plt.FuncFormatter(lambda v, _: f"${v:g}")) + axes[-1].set_xlabel(f"Income or consumption ({period})") + + for o in fig.findobj(): + o.set_clip_on(False) + + fig.tight_layout() + fig.savefig( + PARENT_DIR + / f"{country}_per_year_row_log_{log_scale}.svg", + bbox_inches="tight", + ) + plt.close(fig) + + def filter_survey_data( data: pd.DataFrame, years: List[int], From 4a64e5dfb7ca1d776231867980e3a7e680e33c15 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 12:39:38 +0100 Subject: [PATCH 27/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20extend=20shared=20x=20range=20to=20KDE=20natura?= =?UTF-8?q?l=20extent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously share_x_axis set xlim = union of data extents, which clipped the KDE taper on the right. Now extend each year's bounds by cut*bw in log10 space (matching seaborn's default cut=3 and Scott's bandwidth) before taking the union, so the axis right edge lands exactly where the curve tapers to near-zero. Tick filter still caps visible labels at the largest log tick inside that range — for Sweden, axis runs to $263 but the last label is $200. --- ..._common_norm_False_multiple_areas_none.svg | 124 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_none.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 82 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 78 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 74 +- ..._common_norm_False_multiple_areas_none.svg | 74 +- ..._multiple_layer_common_norm_False_rows.svg | 110 +- ..._multiple_layer_common_norm_False_rows.svg | 112 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 10916 ++++++++------- ...rm_False_multiple_areas_3_30_lognormal.svg | 10924 ++++++++-------- ..._common_norm_False_multiple_areas_3_30.svg | 9470 +++++++------- ...rm_False_multiple_areas_3_30_lognormal.svg | 9472 +++++++------- ..._common_norm_False_multiple_areas_3_30.svg | 6251 +++++---- ...rm_False_multiple_areas_3_30_lognormal.svg | 5527 ++++---- .../Sweden_per_year_row_log_True.svg | 92 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 106 +- .../distribution_generator.py | 45 +- 29 files changed, 27172 insertions(+), 27343 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f608e8e8..a1082cef 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.656886 + 2026-05-22T12:36:51.472343 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index 3a892ae9..be340bf4 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:01.542853 + 2026-05-22T12:36:53.954095 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f1406a9a..f9d87acc 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.957143 + 2026-05-22T12:36:51.730688 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0251c007..9b1e5076 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.045527 + 2026-05-22T12:36:51.805922 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,194 +146,194 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -344,7 +344,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b169bd5d..40eb5184 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.771157 + 2026-05-22T12:36:51.568718 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,152 +146,152 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -302,7 +302,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 873faf61..468a04e8 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.860868 + 2026-05-22T12:36:51.647616 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index eb7f44ad..c423205d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.154978 + 2026-05-22T12:36:51.890947 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,173 +146,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -323,7 +323,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 6c3c6bad..594cc51e 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.242284 + 2026-05-22T12:36:51.962854 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b55f0c91..ff7a0962 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.365516 + 2026-05-22T12:36:52.042066 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,159 +146,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -309,7 +309,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index dadf18d4..274feef5 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.441551 + 2026-05-22T12:36:52.120348 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 4c73c7dd..562d467d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.637349 + 2026-05-22T12:36:52.201998 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,7 +295,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index c9a44f45..772c9574 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:59.995724 + 2026-05-22T12:36:52.445397 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,7 +295,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 44f34060..27000951 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:00.479361 + 2026-05-22T12:36:52.984797 image/svg+xml @@ -74,7 +74,7 @@ z - - + - - + @@ -2912,7 +2912,7 @@ z - - + - - + @@ -5590,7 +5590,7 @@ z - - + - - + @@ -8152,7 +8152,7 @@ z - - + - - + @@ -10664,12 +10664,12 @@ z - - + @@ -10679,7 +10679,7 @@ L 0 3.5 - + @@ -10689,7 +10689,7 @@ L 0 3.5 - + @@ -10699,7 +10699,7 @@ L 0 3.5 - + @@ -10709,7 +10709,7 @@ L 0 3.5 - + @@ -10719,7 +10719,7 @@ L 0 3.5 - + @@ -10729,7 +10729,7 @@ L 0 3.5 - + @@ -10739,7 +10739,7 @@ L 0 3.5 - + @@ -10749,7 +10749,7 @@ L 0 3.5 - + @@ -10759,7 +10759,7 @@ L 0 3.5 - + @@ -10769,159 +10769,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10932,7 +10932,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index 5d693b5e..ce786df0 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:00.743990 + 2026-05-22T12:36:53.234600 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + @@ -3046,7 +3046,7 @@ z - - + - - + @@ -5851,7 +5851,7 @@ z - - + - - + @@ -8530,7 +8530,7 @@ z - - + - - + @@ -11145,12 +11145,12 @@ z - - + @@ -11160,7 +11160,7 @@ L 0 3.5 - + @@ -11170,7 +11170,7 @@ L 0 3.5 - + @@ -11180,7 +11180,7 @@ L 0 3.5 - + @@ -11190,7 +11190,7 @@ L 0 3.5 - + @@ -11200,7 +11200,7 @@ L 0 3.5 - + @@ -11210,7 +11210,7 @@ L 0 3.5 - + @@ -11220,7 +11220,7 @@ L 0 3.5 - + @@ -11230,7 +11230,7 @@ L 0 3.5 - + @@ -11240,7 +11240,7 @@ L 0 3.5 - + @@ -11250,166 +11250,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11420,7 +11420,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 272340ea..76cbb9c4 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.440806 + 2026-05-22T12:36:51.322462 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 7880e67f..78aebe3a 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T11:58:09.801011 + 2026-05-22T12:37:01.057402 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,5726 +41,5692 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 + + + - + - - $500 - - + - - $1000 - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - + - + - - + - - Sweden (1820) + + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index b20fbe47..7224521f 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T11:58:14.501268 + 2026-05-22T12:37:05.336937 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,5730 +41,5696 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 + + + - + - - $500 - - + - - $1000 - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - + - + - - + - - Sweden (1820) + + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 169e2b66..8cb23c72 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T11:58:09.874872 + 2026-05-22T12:37:01.124316 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,5003 +41,4969 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 + + + - + - - $500 - - + - - $1000 - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + Income or consumption (day) - - + - - + - - + - - + - + - - Sweden (1920) + + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index b767b4cc..ad3b8772 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T11:58:14.578685 + 2026-05-22T12:37:05.407610 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,5004 +41,4970 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 + + + - + - - $500 - - + - - $1000 - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + Income or consumption (day) - - + - - + - - + - - + - + - - Sweden (1920) + + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 004b11d6..de5ecb5e 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T11:58:09.951136 + 2026-05-22T12:37:01.190637 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,3386 +41,3353 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 + + + - + - - $500 - - + - - $1000 - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + Income or consumption (day) - - + - - + - - + - + - - Sweden (2026) + + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index ddaa526b..914cd566 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T11:58:14.658788 + 2026-05-22T12:37:05.479561 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,3024 +41,2991 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 + + + - + - - $500 - - + - - $1000 - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + Income or consumption (day) - - + - - + - - + - + - - Sweden (2026) + + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index 08edf037..76241b67 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:12.814935 + 2026-05-22T12:37:03.718747 image/svg+xml @@ -293,12 +293,12 @@ z - - + @@ -308,7 +308,7 @@ L 0 3.5 - + @@ -318,7 +318,7 @@ L 0 3.5 - + @@ -328,7 +328,7 @@ L 0 3.5 - + @@ -338,7 +338,7 @@ L 0 3.5 - + @@ -348,7 +348,7 @@ L 0 3.5 - + @@ -358,7 +358,7 @@ L 0 3.5 - + @@ -368,7 +368,7 @@ L 0 3.5 - + @@ -378,7 +378,7 @@ L 0 3.5 - + @@ -388,7 +388,7 @@ L 0 3.5 - + @@ -398,236 +398,236 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 884aecfd..13162a89 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:00.099561 + 2026-05-22T12:36:52.642544 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b7d070fd..82e909d4 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:00.178857 + 2026-05-22T12:36:52.715797 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 8d15a6a3..8cd79b75 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:01.428789 + 2026-05-22T12:36:53.869661 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imagec59d3afdef" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index 7c496000..7a79eeb9 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.223764 + 2026-05-22T12:36:51.169534 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 9fb8192c..768b6d4c 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:57:58.301872 + 2026-05-22T12:36:51.240678 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 5e75eb8f..68adbc20 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T11:58:01.348904 + 2026-05-22T12:36:53.795827 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index da793482..80f6701b 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -596,14 +596,39 @@ def _filter_year(year_value): sub = sub[(sub[pq] > bounds[0]) & (sub[pq] < bounds[1])] return sub - # Step 1: compute shared x range from data if requested + # Step 1: compute shared x range from data if requested. When the chart is + # log-scaled, extend each year's bounds to where seaborn's KDE actually + # ends (data ± cut*bw in log10 space, matching seaborn's default cut=3 + # and Scott's bandwidth), then take the union across years. This means + # the axis right edge lands exactly where the curve naturally tapers to + # near-zero, rather than chopping the tail. if share_x_axis: - x_min, x_max = float("inf"), float("-inf") + x_min = float("inf") + x_max = float("-inf") for year in years: sub = _filter_year(year) - if len(sub): - x_min = min(x_min, float(sub[x].min())) - x_max = max(x_max, float(sub[x].max())) + if not len(sub): + continue + year_min = float(sub[x].min()) + year_max = float(sub[x].max()) + if log_scale: + v = np.log10(sub[x].to_numpy(dtype=float)) + if weights is not None: + w = sub[weights].to_numpy(dtype=float) + else: + w = np.ones(len(sub)) + mean_v = float(np.average(v, weights=w)) + var_v = float(np.average((v - mean_v) ** 2, weights=w)) + std_v = float(np.sqrt(max(var_v, 0.0))) + w_sum = float(w.sum()) + w_sq_sum = float((w * w).sum()) + n_eff = (w_sum * w_sum / w_sq_sum) if w_sq_sum > 0 else 1.0 + bw = std_v * n_eff ** (-1 / 5) if n_eff > 0 else 0.0 + cut = 3 # matches seaborn's default + year_min = year_min / 10 ** (cut * bw) + year_max = year_max * 10 ** (cut * bw) + x_min = min(x_min, year_min) + x_max = max(x_max, year_max) if x_min < float("inf"): x_axis_range = (x_min, x_max) @@ -827,8 +852,14 @@ def _filter_year(year_value): ) if log_scale: - # Customize x-axis ticks to show 1, 2, 5, 10, 20, 50, 100, etc. - kde_plot.set_xticks(log_ticks) + # Restrict ticks to the visible range. Calling set_xticks with values + # past the current xlim makes matplotlib widen the axis to fit them, + # which silently breaks share_x_axis (xlim jumps to the last tick). + if x_axis_range is not None: + ticks = [t for t in log_ticks if x_axis_range[0] <= t <= x_axis_range[1]] + else: + ticks = log_ticks + kde_plot.set_xticks(ticks) # Add dollar sign prefix to tick labels with integer formatting kde_plot.get_xaxis().set_major_formatter( plt.FuncFormatter(lambda x, p: f"${x:.0f}") From 517930b3b62d958fa5d23adcc9b3fa4c53144192 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 13:23:32 +0100 Subject: [PATCH 28/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20pin=20axes=20position=20when=20sharing=20x/y=20?= =?UTF-8?q?across=20SVGs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When share_x_axis or share_y_axis is on, switch from bbox_inches="tight" (which varies the SVG bounding box per figure based on visible content) to fixed subplots_adjust margins, so per-year SVGs can be stacked pixel-aligned. --- ..._common_norm_False_multiple_areas_none.svg | 124 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_none.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 82 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 78 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 74 +- ..._common_norm_False_multiple_areas_none.svg | 74 +- ..._multiple_layer_common_norm_False_rows.svg | 110 +- ..._multiple_layer_common_norm_False_rows.svg | 112 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 10883 +++++++-------- ...rm_False_multiple_areas_3_30_lognormal.svg | 10889 ++++++++-------- ..._common_norm_False_multiple_areas_3_30.svg | 9432 +++++++------ ...rm_False_multiple_areas_3_30_lognormal.svg | 9438 +++++++------- ..._common_norm_False_multiple_areas_3_30.svg | 6216 +++++---- ...rm_False_multiple_areas_3_30_lognormal.svg | 5498 ++++---- .../Sweden_per_year_row_log_True.svg | 92 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 106 +- .../distribution_generator.py | 12 +- 29 files changed, 27143 insertions(+), 27135 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index a1082cef..b10be16b 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.472343 + 2026-05-22T12:42:20.423734 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index be340bf4..229d04e1 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:53.954095 + 2026-05-22T12:42:22.884373 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f9d87acc..cbb9f19a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.730688 + 2026-05-22T12:42:20.665363 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 9b1e5076..a8903864 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.805922 + 2026-05-22T12:42:20.739258 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,194 +146,194 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -344,7 +344,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 40eb5184..0932647e 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.568718 + 2026-05-22T12:42:20.516401 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,152 +146,152 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -302,7 +302,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 468a04e8..7a9c82e8 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.647616 + 2026-05-22T12:42:20.588307 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index c423205d..2fd6ce30 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.890947 + 2026-05-22T12:42:20.822400 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,173 +146,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -323,7 +323,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 594cc51e..4c6af8cd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.962854 + 2026-05-22T12:42:20.896548 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index ff7a0962..fa2d5353 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.042066 + 2026-05-22T12:42:20.977394 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,159 +146,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -309,7 +309,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 274feef5..0b8b7f7a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.120348 + 2026-05-22T12:42:21.049464 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,166 +146,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -316,7 +316,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 562d467d..7e5e16fc 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.201998 + 2026-05-22T12:42:21.131209 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,7 +295,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 772c9574..b357956f 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.445397 + 2026-05-22T12:42:21.395825 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,145 +146,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -295,7 +295,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 27000951..1db8ca09 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.984797 + 2026-05-22T12:42:21.875215 image/svg+xml @@ -74,7 +74,7 @@ z - - + - - + @@ -2912,7 +2912,7 @@ z - - + - - + @@ -5590,7 +5590,7 @@ z - - + - - + @@ -8152,7 +8152,7 @@ z - - + - - + @@ -10664,12 +10664,12 @@ z - - + @@ -10679,7 +10679,7 @@ L 0 3.5 - + @@ -10689,7 +10689,7 @@ L 0 3.5 - + @@ -10699,7 +10699,7 @@ L 0 3.5 - + @@ -10709,7 +10709,7 @@ L 0 3.5 - + @@ -10719,7 +10719,7 @@ L 0 3.5 - + @@ -10729,7 +10729,7 @@ L 0 3.5 - + @@ -10739,7 +10739,7 @@ L 0 3.5 - + @@ -10749,7 +10749,7 @@ L 0 3.5 - + @@ -10759,7 +10759,7 @@ L 0 3.5 - + @@ -10769,159 +10769,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10932,7 +10932,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index ce786df0..7f5adac9 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:53.234600 + 2026-05-22T12:42:22.142543 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + @@ -3046,7 +3046,7 @@ z - - + - - + @@ -5851,7 +5851,7 @@ z - - + - - + @@ -8530,7 +8530,7 @@ z - - + - - + @@ -11145,12 +11145,12 @@ z - - + @@ -11160,7 +11160,7 @@ L 0 3.5 - + @@ -11170,7 +11170,7 @@ L 0 3.5 - + @@ -11180,7 +11180,7 @@ L 0 3.5 - + @@ -11190,7 +11190,7 @@ L 0 3.5 - + @@ -11200,7 +11200,7 @@ L 0 3.5 - + @@ -11210,7 +11210,7 @@ L 0 3.5 - + @@ -11220,7 +11220,7 @@ L 0 3.5 - + @@ -11230,7 +11230,7 @@ L 0 3.5 - + @@ -11240,7 +11240,7 @@ L 0 3.5 - + @@ -11250,166 +11250,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11420,7 +11420,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 76cbb9c4..5c035020 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.322462 + 2026-05-22T12:42:20.294185 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 78aebe3a..24a96d04 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:37:01.057402 + 2026-05-22T12:42:30.881614 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,5692 +41,5693 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - + - - - Sweden (1820) + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 7224521f..e37d37df 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:37:05.336937 + 2026-05-22T12:42:36.198096 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,5696 +41,5695 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - + - - - Sweden (1820) + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 8cb23c72..ef172ad2 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:37:01.124316 + 2026-05-22T12:42:30.938088 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,4969 +41,4965 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - + - - - Sweden (1920) + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index ad3b8772..ba552071 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:37:05.407610 + 2026-05-22T12:42:36.250147 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,4970 +41,4970 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - + - - - Sweden (1920) + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index de5ecb5e..a34e3d66 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:37:01.190637 + 2026-05-22T12:42:30.995118 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,3353 +41,3351 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - - Sweden (2026) + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 914cd566..59487ff7 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:37:05.479561 + 2026-05-22T12:42:36.305601 image/svg+xml @@ -21,19 +21,19 @@ - - @@ -41,2991 +41,2995 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - - Sweden (2026) + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index 76241b67..2ff64320 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:37:03.718747 + 2026-05-22T12:42:34.601276 image/svg+xml @@ -293,12 +293,12 @@ z - - + @@ -308,7 +308,7 @@ L 0 3.5 - + @@ -318,7 +318,7 @@ L 0 3.5 - + @@ -328,7 +328,7 @@ L 0 3.5 - + @@ -338,7 +338,7 @@ L 0 3.5 - + @@ -348,7 +348,7 @@ L 0 3.5 - + @@ -358,7 +358,7 @@ L 0 3.5 - + @@ -368,7 +368,7 @@ L 0 3.5 - + @@ -378,7 +378,7 @@ L 0 3.5 - + @@ -388,7 +388,7 @@ L 0 3.5 - + @@ -398,236 +398,236 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 13162a89..848a2503 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.642544 + 2026-05-22T12:42:21.490570 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 82e909d4..50d7fca3 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:52.715797 + 2026-05-22T12:42:21.567840 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 8cd79b75..c1cf690f 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:53.869661 + 2026-05-22T12:42:22.797691 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imagee4765d78a7" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index 7a79eeb9..172d125b 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.169534 + 2026-05-22T12:42:20.137921 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 768b6d4c..7260405a 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:51.240678 + 2026-05-22T12:42:20.211928 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 68adbc20..32fc7fb1 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:36:53.795827 + 2026-05-22T12:42:22.726363 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 80f6701b..3b746151 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -896,9 +896,19 @@ def _filter_year(year_value): fig.set_size_inches(width / 100, height / 100) + # When the per-year SVGs need to be stackable (share_x_axis / share_y_axis), + # pin the axes to a fixed fraction of the figure and disable `bbox_inches="tight"`. + # Otherwise matplotlib's tight crop varies by the visible content (e.g. the per-year + # country label that sits at the year-specific median), shifting the plot area + # horizontally across the saved SVGs. + if x_axis_range is not None or shared_y_max is not None: + plt.subplots_adjust(left=0.04, right=0.96, top=0.95, bottom=0.22) + save_kwargs = {} + else: + save_kwargs = {"bbox_inches": "tight"} fig.savefig( f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_multiple_areas_{filename_multiple_areas}{filename_suffix}.svg", - bbox_inches="tight", + **save_kwargs, ) plt.close(fig) From 21c2b4c31e308cf722d7ee6eb490951c2fbff28e Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 14:06:20 +0100 Subject: [PATCH 29/38] =?UTF-8?q?=F0=9F=97=91=EF=B8=8F=F0=9F=A4=96=20distr?= =?UTF-8?q?ibution=5Fgenerator:=20drop=20stale=202025=20SVGs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaced by the 2026-data outputs. --- ..._common_norm_False_multiple_areas_none.svg | 20179 ---------------- ...25_survey_True_log_True_fill_False_pen.svg | 720 - ..._common_norm_False_multiple_areas_none.svg | 1231 - ..._common_norm_False_multiple_areas_none.svg | 1204 - ..._common_norm_False_multiple_areas_none.svg | 1203 - ..._common_norm_False_multiple_areas_none.svg | 1176 - ..._common_norm_False_multiple_areas_none.svg | 1224 - ..._common_norm_False_multiple_areas_none.svg | 1190 - ..._common_norm_False_multiple_areas_none.svg | 1203 - ..._common_norm_False_multiple_areas_none.svg | 1176 - ..._common_norm_False_multiple_areas_none.svg | 1189 - ..._common_norm_False_multiple_areas_none.svg | 1155 - ..._multiple_layer_common_norm_False_rows.svg | 14041 ----------- ..._multiple_layer_common_norm_False_rows.svg | 14377 ----------- ..._common_norm_False_multiple_areas_none.svg | 5667 ----- ..._common_norm_False_multiple_areas_3_30.svg | 3053 --- ..._common_norm_False_multiple_areas_none.svg | 2429 -- ..._common_norm_False_multiple_areas_none.svg | 1224 - ..._common_norm_False_multiple_areas_none.svg | 1197 - ...5_survey_False_log_False_fill_True_pen.svg | 585 - ...er_common_norm_False_multiple_areas_30.svg | 3735 --- ..._norm_False_multiple_areas_3_10_30_100.svg | 6874 ------ ...k_common_norm_True_multiple_areas_none.svg | 3341 --- 23 files changed, 89373 deletions(-) delete mode 100644 PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg delete mode 100644 PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg delete mode 100644 PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg delete mode 100644 PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg delete mode 100644 PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg delete mode 100644 PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg delete mode 100644 PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 991fe3de..00000000 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,20179 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.297886 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Country - - - - - - Burundi - - - - - - Ethiopia - - - - - - Syria - - - - - diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg deleted file mode 100644 index 662e36a3..00000000 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2025_survey_True_log_True_fill_False_pen.svg +++ /dev/null @@ -1,720 +0,0 @@ - - - - - - - - 2026-05-21T18:02:51.864085 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0% - - - - - - - - - - 20% - - - - - - - - - - 40% - - - - - - - - - - 60% - - - - - - - - - - 80% - - - - - - - - - - 100% - - - - Percentage of the population - - - - - - - - - - - - - - $1 per day - - - - - - - - - - $2 per day - - - - - - - - - - $5 per day - - - - - - - - - - $10 per day - - - - - - - - - - $20 per day - - - - - - - - - - $50 per day - - - - - - - - - - $100 per day - - - - - - - - - - $200 per day - - - - - - - - - - $500 per day - - - - - - - - - - $1000 per day - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - country - - - - - - Chile - - - - - - Peru - - - - - - Uruguay - - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index d3e97df5..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1231 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.628785 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Country - - - - - - Denmark - - - - - - Democratic Republic of Congo - - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 9ee0cb85..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1204 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.716712 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - Denmark (2023) - - - Democratic Republic of Congo (2020) - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 0cdfd2a5..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1203 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.454804 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Country - - - - - - Denmark - - - - - - Ethiopia - - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index a8f366d1..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1176 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.534614 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - Denmark (2023) - - - Ethiopia (2021) - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index ebccd9ed..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1224 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.863533 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Country - - - - - - Denmark - - - - - - Madagascar - - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 758a018d..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1190 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.943520 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - Denmark (2023) - - - Madagascar (2021) - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 48ed4b85..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1203 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.044849 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Country - - - - - - Denmark - - - - - - Niger - - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 3e52eca8..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1176 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.123522 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - Denmark (2023) - - - Niger (2021) - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 2ee1fecd..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1189 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.211901 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Country - - - - - - Denmark - - - - - - Syria - - - - - diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index def401af..00000000 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1155 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.291711 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - Denmark (2023) - - - Syria (2022) - - - - diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg deleted file mode 100644 index 6e29ce59..00000000 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ /dev/null @@ -1,14041 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.892856 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $2.59 The poverty line in Ethiopia* - - - Ethiopia - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $3.83 The poverty line in Bangladesh* - - - Bangladesh - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $4.29 The poverty line in Vietnam* - - - Vietnam - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $8.70 The poverty line in Turkey* - - - Turkey - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $27.10 The poverty line in United States* - - - International - Poverty Line: - $3.00 - - - World mean: - $21.95 - - - World median: - $9.45 - - - United States - - - - diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg deleted file mode 100644 index fd58a3f0..00000000 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2025_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ /dev/null @@ -1,14377 +0,0 @@ - - - - - - - - 2026-05-21T14:04:40.224301 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $2.59 The poverty line in Ethiopia* - - - Consumption data from 2021 - - - Ethiopia - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $3.83 The poverty line in Bangladesh* - - - Consumption data from 2022 - - - Bangladesh - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $4.29 The poverty line in Vietnam* - - - Consumption data from 2022 - - - Vietnam - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $8.70 The poverty line in Turkey* - - - Income data from 2023 - - - Turkey - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $27.10 The poverty line in United States* - - - International - Poverty Line: - $3.00 - - - Income data from 2024 - - - United States - - - - diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index dfb91ff4..00000000 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,5667 +0,0 @@ - - - - - - - - 2026-05-21T14:04:38.042550 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Madagascar (2021) - - - United Kingdom (2021) - - - - diff --git a/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg deleted file mode 100644 index 874056c2..00000000 --- a/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ /dev/null @@ -1,3053 +0,0 @@ - - - - - - - - 2026-05-21T14:04:59.276689 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - Sweden (2025) - - - - diff --git a/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 9a19b73a..00000000 --- a/PabloArriagada/distribution_generator/Sweden_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,2429 +0,0 @@ - - - - - - - - 2025-12-05T16:06:55.601564 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - 2 - - - - - - - - - - 5 - - - - - - - - - - 10 - - - - - - - - - - 20 - - - - - - - - - - 50 - - - - - - - - - - 100 - - - - - - - - - - 200 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - Sweden (2025) - - - - - - - - - diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 2a37e1b1..00000000 --- a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1224 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.455909 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Country - - - - - - United States - - - - - - Burundi - - - - - diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 0c88bd04..00000000 --- a/PabloArriagada/distribution_generator/United States_Burundi_2025_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,1197 +0,0 @@ - - - - - - - - 2026-05-21T14:04:39.538405 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - United States (2024) - - - Burundi (2020) - - - - diff --git a/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg deleted file mode 100644 index cec2edd0..00000000 --- a/PabloArriagada/distribution_generator/World_2025_survey_False_log_False_fill_True_pen.svg +++ /dev/null @@ -1,585 +0,0 @@ - - - - - - - - 2026-05-21T18:02:51.761807 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0% - - - - - - - - - - 20% - - - - - - - - - - 40% - - - - - - - - - - 60% - - - - - - - - - - 80% - - - - - - - - - - 100% - - - - Percentage of the population - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ↑ The richest 1% live on - more than $4950 per month - - - ← $90 per month - - - ← $283 per month — the global median - income - - - ← $500 per month - - - ← $900 per month - - - ← $1641 per month — the median - income in Sweden and the UK, and the - income above which the richest 10% - of the world live - - - ← $2162 per month — the median - income in the USA - - - ← $2333 per month — the median - income in Norway - - - - - diff --git a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg deleted file mode 100644 index 25ae2fd9..00000000 --- a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ /dev/null @@ -1,3735 +0,0 @@ - - - - - - - - 2026-05-21T14:04:37.240248 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Country - - - - - - World - - - - - diff --git a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg deleted file mode 100644 index c9946a41..00000000 --- a/PabloArriagada/distribution_generator/World_2025_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ /dev/null @@ -1,6874 +0,0 @@ - - - - - - - - 2026-05-21T14:04:37.944819 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Country - - - - - - World - - - - - diff --git a/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg deleted file mode 100644 index ead74bcd..00000000 --- a/PabloArriagada/distribution_generator/all_countries_2025_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ /dev/null @@ -1,3341 +0,0 @@ - - - - - - - - 2026-05-21T14:04:41.244998 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - International Poverty Line: $3.00 - - - World mean: $21.95 - - - World median: $9.45 - - - - - - - Region - - - - - - East Asia and Pacific - - - - - - Europe and Central Asia - - - - - - Latin America and Caribbean - - - - - - Middle East, North Africa, Afghanistan and Pakistan - - - - - - North America - - - - - - South Asia - - - - - - Sub-Saharan Africa - - - - - From 98b6abff47462a8b9f8a44d7c92b698ab3a70eec Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 14:27:53 +0100 Subject: [PATCH 30/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20drop=20World=20mean=20reference=20line=20and=20?= =?UTF-8?q?round=20labels=20to=20integers?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Removes the add_world_mean parameter, the world_mean_year computation, and the line/label/area branches from distributional_plots, distributional_plots_per_row, and pen_parade (where it was computed but never displayed). Also rounds reference line labels via dollar_decimals (2 for day, 0 for month/year) to match the pen parade style. --- ..._common_norm_False_multiple_areas_none.svg | 6105 +---------------- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 1762 +++-- ..._common_norm_False_multiple_areas_none.svg | 1768 +++-- ..._common_norm_False_multiple_areas_none.svg | 1809 +++-- ..._common_norm_False_multiple_areas_none.svg | 1787 +++-- ..._common_norm_False_multiple_areas_none.svg | 1778 +++-- ..._common_norm_False_multiple_areas_none.svg | 1779 +++-- ..._common_norm_False_multiple_areas_none.svg | 1816 +++-- ..._common_norm_False_multiple_areas_none.svg | 1787 +++-- ..._common_norm_False_multiple_areas_none.svg | 1802 +++-- ..._common_norm_False_multiple_areas_none.svg | 1766 +++-- ..._multiple_layer_common_norm_False_rows.svg | 239 +- ..._multiple_layer_common_norm_False_rows.svg | 112 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 84 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 84 +- ..._common_norm_False_multiple_areas_3_30.svg | 80 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 80 +- .../Sweden_per_year_row_log_True.svg | 92 +- ..._common_norm_False_multiple_areas_none.svg | 1321 ++-- ..._common_norm_False_multiple_areas_none.svg | 155 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 132 +- .../distribution_generator.py | 173 +- 29 files changed, 10364 insertions(+), 16709 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b10be16b..144ec8fc 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:20.423734 + 2026-05-22T14:26:30.915395 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index 229d04e1..c321efc8 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:22.884373 + 2026-05-22T14:26:33.327103 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index cbb9f19a..2a9d9a13 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.665363 + 2026-05-22T14:26:31.142266 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,1150 +41,1138 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index a8903864..de368404 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.739258 + 2026-05-22T14:26:31.216433 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,1163 +41,1151 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - Denmark (2023) + Denmark (2023) - Democratic Republic of Congo (2020) + Democratic Republic of Congo (2020) diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0932647e..1ebe1a3e 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.516401 + 2026-05-22T14:26:31.000525 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,1154 +41,1135 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - - Country + Country - - Denmark + Denmark - - Ethiopia + Ethiopia diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 7a9c82e8..1d0fd49b 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.588307 + 2026-05-22T14:26:31.066264 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,1135 +41,1102 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + - - + - - - - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - Denmark (2023) + Denmark (2023) - Ethiopia (2021) + Ethiopia (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 2fd6ce30..a6919978 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.822400 + 2026-05-22T14:26:31.299825 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,1136 +41,1096 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 4c6af8cd..8aabf71e 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.896548 + 2026-05-22T14:26:31.371392 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,1149 +41,1116 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + - - + - - - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - Denmark (2023) + Denmark (2023) - Madagascar (2021) + Madagascar (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index fa2d5353..9f34a5cb 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:20.977394 + 2026-05-22T14:26:31.452731 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,1161 +41,1135 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + - - + - - - - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - - Country + Country - - Denmark + Denmark - - Niger + Niger diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0b8b7f7a..1dc930eb 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:21.049464 + 2026-05-22T14:26:31.520332 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,1135 +41,1102 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + - - + - - - - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - Denmark (2023) + Denmark (2023) - Niger (2021) + Niger (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 7e5e16fc..f5bd4178 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:21.131209 + 2026-05-22T14:26:31.597831 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,1147 +41,1135 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - - Country + Country - - Denmark + Denmark - - Syria + Syria diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b357956f..6a4f15cd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:21.395825 + 2026-05-22T14:26:31.840211 image/svg+xml @@ -22,18 +22,18 @@ - @@ -41,1114 +41,1102 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 - Denmark (2023) + Denmark (2023) - Syria (2022) + Syria (2022) diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 1db8ca09..0e7de726 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:21.875215 + 2026-05-22T14:26:32.283329 image/svg+xml @@ -74,7 +74,7 @@ z - - + - - + @@ -2845,16 +2845,11 @@ L 234.812479 7.2 " style="fill: none; stroke-dasharray: 0.8,1.32; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - - - - + @@ -2912,7 +2907,7 @@ z - - + - - + - + - + - - - - + - + @@ -5590,7 +5580,7 @@ z - - + - - + - + - + - - - - + - + @@ -8152,7 +8137,7 @@ z - - + - - + - + - + - - - - + - + @@ -10662,14 +10642,14 @@ z - + - - + @@ -10677,9 +10657,9 @@ L 0 3.5 - + - + @@ -10687,9 +10667,9 @@ L 0 3.5 - + - + @@ -10697,9 +10677,9 @@ L 0 3.5 - + - + @@ -10707,9 +10687,9 @@ L 0 3.5 - + - + @@ -10717,9 +10697,9 @@ L 0 3.5 - + - + @@ -10727,9 +10707,9 @@ L 0 3.5 - + - + @@ -10737,9 +10717,9 @@ L 0 3.5 - + - + @@ -10747,9 +10727,9 @@ L 0 3.5 - + - + @@ -10757,9 +10737,9 @@ L 0 3.5 - + - + @@ -10767,161 +10747,161 @@ L 0 3.5 - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10932,7 +10912,7 @@ L 0 2 - - + - - + - + - + - - - - + - + @@ -13950,14 +13925,10 @@ L 1055.759099 495.835 $3.00 - World mean: - $22.30 - - World median: $9.65 - + United States diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index 7f5adac9..c2a8c66a 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:22.142543 + 2026-05-22T14:26:32.544238 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + @@ -3046,7 +3046,7 @@ z - - + - - + @@ -5851,7 +5851,7 @@ z - - + - - + @@ -8530,7 +8530,7 @@ z - - + - - + @@ -11145,12 +11145,12 @@ z - - + @@ -11160,7 +11160,7 @@ L 0 3.5 - + @@ -11170,7 +11170,7 @@ L 0 3.5 - + @@ -11180,7 +11180,7 @@ L 0 3.5 - + @@ -11190,7 +11190,7 @@ L 0 3.5 - + @@ -11200,7 +11200,7 @@ L 0 3.5 - + @@ -11210,7 +11210,7 @@ L 0 3.5 - + @@ -11220,7 +11220,7 @@ L 0 3.5 - + @@ -11230,7 +11230,7 @@ L 0 3.5 - + @@ -11240,7 +11240,7 @@ L 0 3.5 - + @@ -11250,166 +11250,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11420,7 +11420,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5c035020..74bd7d36 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:20.294185 + 2026-05-22T14:26:30.795920 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 24a96d04..701d400b 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:30.881614 + 2026-05-22T14:26:40.152850 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,180 +126,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -310,7 +310,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index e37d37df..5a986f89 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:36.198096 + 2026-05-22T14:26:47.382697 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,180 +126,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -310,7 +310,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index ef172ad2..eb8cb4ae 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:30.938088 + 2026-05-22T14:26:40.210391 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,180 +126,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -310,7 +310,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index ba552071..8ce67a2c 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:36.250147 + 2026-05-22T14:26:47.437497 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,180 +126,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -310,7 +310,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index a34e3d66..8360415f 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:30.995118 + 2026-05-22T14:26:40.267693 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,180 +126,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -310,7 +310,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 59487ff7..f143df53 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:36.305601 + 2026-05-22T14:26:47.493693 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,180 +126,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -310,7 +310,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index 2ff64320..d91fd036 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:34.601276 + 2026-05-22T14:26:45.586656 image/svg+xml @@ -293,12 +293,12 @@ z - - + @@ -308,7 +308,7 @@ L 0 3.5 - + @@ -318,7 +318,7 @@ L 0 3.5 - + @@ -328,7 +328,7 @@ L 0 3.5 - + @@ -338,7 +338,7 @@ L 0 3.5 - + @@ -348,7 +348,7 @@ L 0 3.5 - + @@ -358,7 +358,7 @@ L 0 3.5 - + @@ -368,7 +368,7 @@ L 0 3.5 - + @@ -378,7 +378,7 @@ L 0 3.5 - + @@ -388,7 +388,7 @@ L 0 3.5 - + @@ -398,236 +398,236 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 848a2503..c2ed2815 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:21.490570 + 2026-05-22T14:26:31.928580 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,296 +41,285 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - - - - + - - + - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 50d7fca3..7af197d3 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T12:42:21.567840 + 2026-05-22T14:26:31.999150 image/svg+xml @@ -22,8 +22,8 @@ @@ -41,303 +41,292 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - + - $500 + $5000 - + - $1000 + $10000 - - - - + + + $20000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - + - - - - + - + - - International Poverty Line: $3.00 - - World mean: $22.30 + International Poverty Line: $90 - World median: $9.65 + World median: $289 United States (2024) diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index c1cf690f..ab5a2706 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:22.797691 + 2026-05-22T14:26:33.218629 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="image710f9944e5" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index 172d125b..dbbfc9d5 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:20.137921 + 2026-05-22T14:26:30.650370 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 7260405a..578cbea2 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:20.211928 + 2026-05-22T14:26:30.719756 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 32fc7fb1..8f8f1455 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T12:42:22.726363 + 2026-05-22T14:26:33.143649 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + @@ -3218,16 +3218,11 @@ L 289.342258 7.2 " style="fill: none; stroke-dasharray: 0.8,1.32; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - - - - + @@ -3236,9 +3231,6 @@ L 844.2 423 International Poverty Line: $3.00 - World mean: $22.30 - - World median: $9.65 @@ -3255,7 +3247,7 @@ Q 681.8 212.000625 683.8 212.000625 z " style="fill: #ffffff; opacity: 0.8; stroke: #cccccc; stroke-linejoin: miter"/> - + Region @@ -3266,7 +3258,7 @@ L 685.8 113.780312 z " style="fill: #4c72b0; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + East Asia and Pacific @@ -3277,7 +3269,7 @@ L 685.8 128.0475 z " style="fill: #dd8452; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Europe and Central Asia @@ -3288,7 +3280,7 @@ L 685.8 142.192812 z " style="fill: #55a868; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Latin America and Caribbean @@ -3299,7 +3291,7 @@ L 685.8 156.46 z " style="fill: #c44e52; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Middle East, North Africa, Afghanistan and Pakistan @@ -3310,7 +3302,7 @@ L 685.8 170.7225 z " style="fill: #8172b3; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + North America @@ -3321,7 +3313,7 @@ L 685.8 184.867812 z " style="fill: #937860; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + South Asia @@ -3332,7 +3324,7 @@ L 685.8 199.013125 z " style="fill: #da8bc3; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Sub-Saharan Africa diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 3b746151..77b2c351 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -197,7 +197,6 @@ def run() -> None: period="day", survey_based=False, add_ipl=None, - add_world_mean=None, add_world_median=None, add_multiple_lines_day=lines, gridsize=GRIDSIZE_HIGHER_RESOLUTION, @@ -221,7 +220,6 @@ def run() -> None: common_norm=False, period="day", add_ipl="area", - add_world_mean=None, add_world_median=None, add_multiple_lines_day=None, gridsize=GRIDSIZE_HIGHER_RESOLUTION, @@ -250,7 +248,6 @@ def run() -> None: period="day", survey_based=False, add_ipl="area", - add_world_mean="area", add_world_median="area", ) @@ -268,7 +265,7 @@ def run() -> None: years=[LATEST_YEAR], legend=True, common_norm=False, - period="day", + period="month", survey_based=False, width=1500, height=400, @@ -285,7 +282,7 @@ def run() -> None: years=[LATEST_YEAR], legend=False, common_norm=False, - period="day", + period="month", survey_based=True, preferred_reporting_level="national", preferred_welfare_type="income", @@ -309,7 +306,6 @@ def run() -> None: period="day", survey_based=False, add_ipl="line", - add_world_mean="line", add_world_median="line", add_national_lines=True, df_national_lines=df_national_lines, @@ -333,7 +329,6 @@ def run() -> None: preferred_reporting_level="national", preferred_welfare_type="income", add_ipl="line", - add_world_mean=None, add_world_median=None, add_national_lines=True, df_national_lines=df_national_lines, @@ -413,7 +408,6 @@ def run() -> None: period="day", survey_based=False, add_ipl=None, - add_world_mean=None, add_world_median=None, add_multiple_lines_day=[3, 30], width=1150, @@ -440,7 +434,6 @@ def run() -> None: period="day", survey_based=False, add_ipl=None, - add_world_mean=None, add_world_median=None, width=1150, height=220, @@ -469,7 +462,6 @@ def run() -> None: period="day", survey_based=False, add_ipl=None, - add_world_mean=None, add_world_median=None, add_multiple_lines_day=[3, 30], width=1150, @@ -499,7 +491,6 @@ def distributional_plots( preferred_reporting_level: Literal["national", "urban", "rural", None] = None, preferred_welfare_type: Literal["income", "consumption", None] = None, add_ipl: Literal["line", "area", None] = "line", - add_world_mean: Literal["line", "area", None] = "line", add_world_median: Literal["line", "area", None] = "line", add_multiple_lines_day: List[float] = None, width: int = WIDTH, @@ -570,6 +561,9 @@ def distributional_plots( # Define the income period values period_factor = PERIOD_VALUES[period]["factor"] log_ticks = PERIOD_VALUES[period]["log_ticks"] + # Cents only make sense at the daily scale; monthly and yearly values are + # large enough that the decimal noise is distracting (matches pen_parade). + dollar_decimals = 2 if period == "day" else 0 data[x] = data[x] * period_factor @@ -581,6 +575,7 @@ def distributional_plots( x_axis_range: tuple | None = None # set by the share_x_axis pre-pass below shared_y_max: float | None = None if share_x_axis or share_y_axis: + def _filter_year(year_value): if survey_based: sub = data[data["reference_year"] == year_value] @@ -650,10 +645,19 @@ def _filter_year(year_value): continue fig_pre, ax_pre = plt.subplots() sns.kdeplot( - data=data_year_pre, x=x, weights=weights, fill=False, - log_scale=log_scale, hue=hue, hue_order=hue_order, - multiple=multiple, legend=False, common_norm=common_norm, - gridsize=gridsize, clip=clip_pre, ax=ax_pre, + data=data_year_pre, + x=x, + weights=weights, + fill=False, + log_scale=log_scale, + hue=hue, + hue_order=hue_order, + multiple=multiple, + legend=False, + common_norm=common_norm, + gridsize=gridsize, + clip=clip_pre, + ax=ax_pre, ) for line in ax_pre.lines: ys = np.asarray(line.get_data()[1]) @@ -668,16 +672,6 @@ def _filter_year(year_value): data_year = data[data["year"] == year].reset_index(drop=True) if df_main_indicators is not None: - # Define world mean - world_mean_year = ( - df_main_indicators.loc[ - (df_main_indicators["country"] == "World") - & (df_main_indicators["year"] == year), - "mean", - ].values[0] - * period_factor - ) - # Define world median world_median_year = ( df_main_indicators.loc[ @@ -756,7 +750,7 @@ def _filter_year(year_value): x=ipl, # x-coordinate for the text y=plt.ylim()[1] * 0.99, # y-coordinate for the text, positioned near the top of the plot - s=f"International Poverty Line: ${round(ipl, 2):.2f}", # Text string to display + s=f"International Poverty Line: ${ipl:.{dollar_decimals}f}", # Text string to display color="grey", # Color of the text rotation=90, # Rotate the text 90 degrees verticalalignment="top", # Align the text vertically at the top @@ -769,31 +763,6 @@ def _filter_year(year_value): values=[ipl], ) - if add_world_mean == "line": - # Add a vertical line for the world mean, in the same format as the international poverty line - plt.axvline( - x=world_mean_year, - color="lightgrey", - linestyle=":", - linewidth=0.8, - ) - plt.text( - x=world_mean_year, - y=plt.ylim()[1] * 0.99, - s=f"World mean: ${round(world_mean_year, 2):.2f}", - color="grey", - rotation=90, - verticalalignment="top", - fontsize=8, - ) - - elif add_world_mean == "area": - draw_area_under_curve( - number_of_countries=number_of_countries, - kde_plot=kde_plot, - values=[world_mean_year], - ) - if add_world_median == "line": # Add a vertical line for the world median, in the same format as the international poverty line plt.axvline( @@ -805,7 +774,7 @@ def _filter_year(year_value): plt.text( x=world_median_year, y=plt.ylim()[1] * 0.99, - s=f"World median: ${round(world_median_year, 2):.2f}", + s=f"World median: ${world_median_year:.{dollar_decimals}f}", color="grey", rotation=90, verticalalignment="top", @@ -856,7 +825,9 @@ def _filter_year(year_value): # past the current xlim makes matplotlib widen the axis to fit them, # which silently breaks share_x_axis (xlim jumps to the last tick). if x_axis_range is not None: - ticks = [t for t in log_ticks if x_axis_range[0] <= t <= x_axis_range[1]] + ticks = [ + t for t in log_ticks if x_axis_range[0] <= t <= x_axis_range[1] + ] else: ticks = log_ticks kde_plot.set_xticks(ticks) @@ -933,7 +904,6 @@ def distributional_plots_per_row( preferred_reporting_level: Literal["national", "urban", "rural", None] = None, preferred_welfare_type: Literal["income", "consumption", None] = None, add_ipl: Literal["line", "area", None] = "line", - add_world_mean: Literal["line", "area", None] = "line", add_world_median: Literal["line", "area", None] = "line", add_national_lines: bool = False, df_national_lines: pd.DataFrame = None, @@ -956,9 +926,17 @@ def distributional_plots_per_row( """ if row_by == "year": _distributional_plots_year_rows( - data=data, x=x, weights=weights, country=hue_order[0], years=years, - log_scale=log_scale, gridsize=gridsize, period=period, - add_multiple_lines_day=None, width=width, height=height, + data=data, + x=x, + weights=weights, + country=hue_order[0], + years=years, + log_scale=log_scale, + gridsize=gridsize, + period=period, + add_multiple_lines_day=None, + width=width, + height=height, add_fade_in_tails=add_fade_in_tails, percentiles_to_fade=percentiles_to_fade, ) @@ -1003,6 +981,7 @@ def distributional_plots_per_row( # Define the income period values period_factor = PERIOD_VALUES[period]["factor"] log_ticks = PERIOD_VALUES[period]["log_ticks"] + dollar_decimals = 2 if period == "day" else 0 data[x] = data[x] * period_factor @@ -1020,16 +999,6 @@ def distributional_plots_per_row( else: data_year = data[data["year"] == year].reset_index(drop=True) - # Define world mean - world_mean_year = ( - df_main_indicators.loc[ - (df_main_indicators["country"] == "World") - & (df_main_indicators["year"] == year), - "mean", - ].values[0] - * period_factor - ) - # Define world median world_median_year = ( df_main_indicators.loc[ @@ -1116,15 +1085,6 @@ def distributional_plots_per_row( linewidth=0.8, ) - if add_world_mean == "line": - # Add a vertical line for the world mean - ax.axvline( - x=world_mean_year, - color="lightgrey", - linestyle=":", - linewidth=0.8, - ) - if add_world_median == "line": # Add a vertical line for the world median ax.axvline( @@ -1139,7 +1099,7 @@ def distributional_plots_per_row( ax.text( x=national_poverty_line, y=plt.ylim()[0] - 0.05 * (plt.ylim()[1] - plt.ylim()[0]), - s=f"${round(national_poverty_line, 2):.2f} The poverty line in {country}*", + s=f"${national_poverty_line:.{dollar_decimals}f} The poverty line in {country}*", color="grey", rotation=0, verticalalignment="top", @@ -1153,19 +1113,7 @@ def distributional_plots_per_row( ax.text( x=ipl, y=plt.ylim()[1], - s=f"International\nPoverty Line:\n${round(ipl, 2):.2f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) - - if add_world_mean == "line": - ax.text( - x=world_mean_year, - y=plt.ylim()[1], - s=f"World mean:\n${round(world_mean_year, 2):.2f}", + s=f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", color="grey", rotation=90, verticalalignment="top", @@ -1177,7 +1125,7 @@ def distributional_plots_per_row( ax.text( x=world_median_year, y=plt.ylim()[1], - s=f"World median:\n${round(world_median_year, 2):.2f}", + s=f"World median:\n${world_median_year:.{dollar_decimals}f}", color="grey", rotation=90, verticalalignment="top", @@ -1287,9 +1235,11 @@ def _distributional_plots_year_rows( data[x] = data[x] * period_factor fig, axes = plt.subplots( - nrows=len(years), ncols=1, + nrows=len(years), + ncols=1, figsize=(width / 100, height / 100 * len(years)), - sharex=True, sharey=True, + sharex=True, + sharey=True, ) if len(years) == 1: axes = [axes] @@ -1308,13 +1258,21 @@ def _distributional_plots_year_rows( (data_year[pq] > bounds[0]) & (data_year[pq] < bounds[1]) ] sns.kdeplot( - data=data_year, x=x, weights=weights, log_scale=log_scale, - gridsize=gridsize, ax=ax, fill=False, legend=False, + data=data_year, + x=x, + weights=weights, + log_scale=log_scale, + gridsize=gridsize, + ax=ax, + fill=False, + legend=False, ) if add_multiple_lines_day is not None: for line_value in add_multiple_lines_day: ax.axvline( - x=line_value * period_factor, color="lightgrey", linestyle=":", + x=line_value * period_factor, + color="lightgrey", + linestyle=":", linewidth=0.8, ) @@ -1322,8 +1280,10 @@ def _distributional_plots_year_rows( x=data_year[x].median() if len(data_year) else 1.0, y=ax.get_ylim()[0], s=f"{country} ({year})", - color="black", verticalalignment="bottom", - horizontalalignment="center", fontsize=10, + color="black", + verticalalignment="bottom", + horizontalalignment="center", + fontsize=10, ) ax.set_ylabel("") ax.yaxis.set_ticks([]) @@ -1335,7 +1295,9 @@ def _distributional_plots_year_rows( if log_scale: axes[-1].set_xticks(log_ticks) - axes[-1].get_xaxis().set_major_formatter(plt.FuncFormatter(lambda v, _: f"${v:g}")) + axes[-1].get_xaxis().set_major_formatter( + plt.FuncFormatter(lambda v, _: f"${v:g}") + ) axes[-1].set_xlabel(f"Income or consumption ({period})") for o in fig.findobj(): @@ -1343,8 +1305,7 @@ def _distributional_plots_year_rows( fig.tight_layout() fig.savefig( - PARENT_DIR - / f"{country}_per_year_row_log_{log_scale}.svg", + PARENT_DIR / f"{country}_per_year_row_log_{log_scale}.svg", bbox_inches="tight", ) plt.close(fig) @@ -1566,16 +1527,6 @@ def pen_parade( # (e.g. $289.50 → "$289"), so labels still match the rounded numbers shown # elsewhere in OWID's online data. - # Define world mean - world_mean_year = float( - df_main_indicators.loc[ - (df_main_indicators["country"] == "World") - & (df_main_indicators["year"] == year), - "mean", - ].values[0] - * period_factor - ) - # Define world median world_median_year = float( df_main_indicators.loc[ From 32b654f75e739ad788e149e687775baef146cc4c Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 17:08:11 +0100 Subject: [PATCH 31/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20figure-spanning=20IPL/median=20lines=20+=20per-?= =?UTF-8?q?row=20IPL/high-income/world-median=20controls?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add `add_high_income_pl`, `add_world_median` (per-year via df_main_indicators) and `filename_suffix` to distributional_plots_per_row. - Forward fill, add_ipl, add_multiple_lines_day to the year-rows helper, and swap the axvline loop for draw_area_under_curve so reference thresholds become shaded regions. - Draw constant-x reference lines (IPL, high-income, world-median when shared) with a figure-spanning Line2D in a blended transform so the line is continuous across stacked subplots (the per-axes axvline left a visible gap between rows). - Share y across rows in distributional_plots_per_row(row_by="country"). - Apply share_x_axis-style range, KDE clip, set_xlim, and tick filtering inside the year-rows helper. --- ..._common_norm_False_multiple_areas_none.svg | 112 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._multiple_layer_common_norm_False_rows.svg | 23827 ++++++++------- ..._multiple_layer_common_norm_False_rows.svg | 24777 ++++++++-------- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 10828 ++++--- ...rm_False_multiple_areas_3_30_lognormal.svg | 10842 ++++--- ..._common_norm_False_multiple_areas_3_30.svg | 1389 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 1400 +- ..._common_norm_False_multiple_areas_3_30.svg | 1647 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 2000 +- .../Sweden_per_year_row_log_True.svg | 13659 ++++++++- ...Sweden_per_year_row_log_True_lognormal.svg | 13248 +++++++++ ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 82 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 106 +- .../distribution_generator.py | 282 +- .../historic_distributions.ipynb | 565 - 31 files changed, 66389 insertions(+), 39599 deletions(-) create mode 100644 PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg delete mode 100644 PabloArriagada/distribution_generator/historic_distributions.ipynb diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 144ec8fc..92e2b1bc 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:30.915395 + 2026-05-22T17:06:14.668971 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index c321efc8..43772d7b 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:33.327103 + 2026-05-22T17:06:17.244727 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 2a9d9a13..c52da09b 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.142266 + 2026-05-22T17:06:14.904502 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,173 +156,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -333,7 +333,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index de368404..00538639 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.216433 + 2026-05-22T17:06:14.975361 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,180 +156,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -340,7 +340,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 1ebe1a3e..e8a4a61a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.000525 + 2026-05-22T17:06:14.758136 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 1d0fd49b..918a2e3a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.066264 + 2026-05-22T17:06:14.826979 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index a6919978..0885b8f3 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.299825 + 2026-05-22T17:06:15.056466 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 8aabf71e..b1992d5c 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.371392 + 2026-05-22T17:06:15.129077 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,145 +156,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 9f34a5cb..ef2e6c21 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.452731 + 2026-05-22T17:06:15.205469 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 1dc930eb..c6921626 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.520332 + 2026-05-22T17:06:15.271844 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f5bd4178..54916d57 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.597831 + 2026-05-22T17:06:15.347892 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 6a4f15cd..4a69da82 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.840211 + 2026-05-22T17:06:15.602045 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 0e7de726..9508f885 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:32.283329 + 2026-05-22T17:06:16.176242 image/svg+xml @@ -30,8 +30,8 @@ z - - - + - - + - - - - - - - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Ethiopia + Ethiopia - @@ -2907,2639 +2896,2629 @@ z - - + - - + - - + - - - - - - - - + - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Bangladesh + Bangladesh - @@ -5580,2523 +5559,2507 @@ z - - + - - + - - + - - - - - - - - + - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Vietnam + Vietnam - @@ -8137,2519 +8100,2497 @@ z - - + - - + - - + - - - - - - - - + - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Turkey + Turkey - + - - + @@ -10657,9 +10598,9 @@ L 0 3.5 - + - + @@ -10667,9 +10608,9 @@ L 0 3.5 - + - + @@ -10677,9 +10618,9 @@ L 0 3.5 - + - + @@ -10687,9 +10628,9 @@ L 0 3.5 - + - + @@ -10697,9 +10638,9 @@ L 0 3.5 - + - + @@ -10707,9 +10648,9 @@ L 0 3.5 - + - + @@ -10717,9 +10658,9 @@ L 0 3.5 - + - + @@ -10727,9 +10668,9 @@ L 0 3.5 - + - + @@ -10737,9 +10678,9 @@ L 0 3.5 - + - + @@ -10747,161 +10688,161 @@ L 0 3.5 - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10912,1007 +10853,1007 @@ L 0 2 - - + - - + - - + - - - - - - - + - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - International - Poverty Line: - $3.00 + International + Poverty Line: + $3.00 - World median: - $9.65 + World median: + $9.65 United States + + + + + + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index c2a8c66a..4e06576f 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:32.544238 + 2026-05-22T17:06:16.494488 image/svg+xml @@ -30,8 +30,8 @@ z - - - + - - + - - - - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Consumption data from 2021 + Consumption data from 2021 - Ethiopia + Ethiopia - @@ -3046,2770 +3041,2765 @@ z - - + - - + - - + - - - - - + - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Consumption data from 2022 + Consumption data from 2022 - Bangladesh + Bangladesh - @@ -5851,2644 +5841,2633 @@ z - - + - - + - - + - - - - - + - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Consumption data from 2022 + Consumption data from 2022 - Vietnam + Vietnam - @@ -8530,2886 +8509,2871 @@ z - - + - - + - - + - - - - - + - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Income data from 2023 + Income data from 2023 - Turkey + Turkey - + - - + - $1 + $1 - + - + - $2 + $2 - + - + - $5 + $5 - + - + - $10 + $10 - + - + - $20 + $20 - + - + - $50 + $50 - + - + - $100 + $100 - + - + - $200 + $200 - + - + - $500 + $500 - + - + - $1000 + $1000 - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11420,1007 +11384,1007 @@ L 0 2 - - + - - + - - + - - - - + - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - International - Poverty Line: - $3.00 + International + Poverty Line: + $3.00 Income data from 2024 @@ -14373,5 +14317,10 @@ L 968.664266 495.835 United States + + + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 74bd7d36..5445e180 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:30.795920 + 2026-05-22T17:06:14.539277 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 701d400b..4c041e3e 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:40.152850 + 2026-05-22T17:06:24.969381 image/svg+xml @@ -41,5682 +41,5652 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - - - - + + + $5000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + - @@ -5726,7 +5696,7 @@ L 595.906837 123.544592 L 794.88 123.552 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 5a986f89..2ad2ac76 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:47.382697 + 2026-05-22T17:06:32.778685 image/svg+xml @@ -41,5694 +41,5670 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - - - - + + + $5000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - Income or consumption (day) + + + + + + + + + Income or consumption (month) - - + - - + - - + - - + - + - + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index eb8cb4ae..2b3b8e30 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:40.210391 + 2026-05-22T17:06:25.032551 image/svg+xml @@ -41,276 +41,279 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - - - - + + + $5000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - Income or consumption (day) + + Income or consumption (month) - - + - - - - - - - - - - + + + + + + @@ -4998,7 +4399,7 @@ L 695.063047 123.544295 L 794.88 123.552 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 8ce67a2c..6c06dd6f 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:47.437497 + 2026-05-22T17:06:32.839091 image/svg+xml @@ -41,276 +41,286 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - - - - + + + $5000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + - - Income or consumption (day) + + Income or consumption (month) - - + - - - - - - - - - - + + + + + + - + - + - + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 8360415f..248bfd72 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:40.267693 + 2026-05-22T17:06:25.092703 image/svg+xml @@ -41,276 +41,279 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - - - - + + + $5000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + + + + + + @@ -3384,7 +4425,7 @@ L 794.897705 123.540693 L 794.88 123.552 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index f143df53..a03360d1 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:47.493693 + 2026-05-22T17:06:32.897529 image/svg+xml @@ -41,276 +41,286 @@ z - - + - $1 + $10 - + - $2 + $20 - + - $5 + $50 - + - $10 + $100 - + - $20 + $200 - + - $50 + $500 - + - $100 + $1000 - + - $200 + $2000 - - - - + + + $5000 + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + - - Income or consumption (day) + + Income or consumption (month) - - + - - + - - + + + + + + - + - + - + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index d91fd036..c8d7af7a 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T14:26:45.586656 + 2026-05-22T17:06:31.187499 image/svg+xml @@ -22,8 +22,8 @@ @@ -31,8 +31,8 @@ z @@ -71,98 +71,5419 @@ z - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - Sweden (1820) + Sweden (1820) + + + + + + + + + + @@ -186,548 +5507,8078 @@ z - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - Sweden (1920) + Sweden (1920) - + - - + - $1 + $10 - + - + - $2 + $20 - + - + - $5 + $50 - + - + - $10 + $100 - + - + - $20 + $200 - + - + - $50 + $500 - + - + - $100 + $1000 - + - + - $200 + $2000 - + - + - $500 + $5000 - + + + + - + - - $1000 - - + - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - + + Income or consumption (month) - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + - - Income or consumption (day) + + + + + + + + - - - + - + - - Sweden (2026) + + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg new file mode 100644 index 00000000..8fd4bb44 --- /dev/null +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -0,0 +1,13248 @@ + + + + + + + + 2026-05-22T17:06:35.952038 + image/svg+xml + + + Matplotlib v3.10.9, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + International + Poverty Line: + $90 + + + Sweden (1820) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (1920) + + + + + + + + + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + $2000 + + + + + + + + + + $5000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (month) + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sweden (2026) + + + + + + + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index c2ed2815..80bb262f 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.928580 + 2026-05-22T17:06:15.709915 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,159 +156,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -319,7 +319,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 7af197d3..e879068a 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:31.999150 + 2026-05-22T17:06:15.804287 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,166 +156,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -326,7 +326,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index ab5a2706..7af9cd53 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:33.218629 + 2026-05-22T17:06:17.144283 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imagec7d3ed6b74" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index dbbfc9d5..c23f70f8 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:30.650370 + 2026-05-22T17:06:14.376555 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 578cbea2..bf14610c 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:30.719756 + 2026-05-22T17:06:14.454677 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 8f8f1455..6255d369 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T14:26:33.143649 + 2026-05-22T17:06:17.062750 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 77b2c351..d782ca92 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -405,7 +405,7 @@ def run() -> None: legend=False, common_norm=False, gridsize=GRIDSIZE_HIGHER_RESOLUTION, - period="day", + period="month", survey_based=False, add_ipl=None, add_world_median=None, @@ -417,7 +417,8 @@ def run() -> None: ) # Historical data — Option B: single SVG with all three years stacked, - # sharing both x and y axes (via row_by="year"). + # sharing both x and y axes (via row_by="year"). Filled KDE with shaded + # regions under each curve at the $3/day IPL and the $30/day high-income line. distributional_plots_per_row( data=df_thousand_bins_historical, df_main_indicators=None, @@ -428,16 +429,17 @@ def run() -> None: hue="country", hue_order=["Sweden"], years=[1820, 1920, LATEST_YEAR], - fill=False, + fill=True, common_norm=False, gridsize=GRIDSIZE_HIGHER_RESOLUTION, - period="day", + period="month", survey_based=False, add_ipl=None, add_world_median=None, width=1150, height=220, row_by="year", + add_multiple_lines_day=[3, 30], ) # Same years from the all-lognormal companion dataset. Only the 2026 row @@ -459,7 +461,7 @@ def run() -> None: legend=False, common_norm=False, gridsize=GRIDSIZE_HIGHER_RESOLUTION, - period="day", + period="month", survey_based=False, add_ipl=None, add_world_median=None, @@ -471,6 +473,30 @@ def run() -> None: filename_suffix="_lognormal", ) + distributional_plots_per_row( + data=df_thousand_bins_historical_all_lognormal, + df_main_indicators=None, + x="avg", + weights="pop", + log_scale=True, + multiple="layer", + hue="country", + hue_order=["Sweden"], + years=[1820, 1920, LATEST_YEAR], + fill=True, + common_norm=False, + gridsize=GRIDSIZE_HIGHER_RESOLUTION, + period="month", + survey_based=False, + add_ipl="line", + add_world_median=None, + width=1150, + height=220, + row_by="year", + add_multiple_lines_day=[3, 30], + filename_suffix="_lognormal", + ) + def distributional_plots( data: pd.DataFrame, @@ -912,6 +938,9 @@ def distributional_plots_per_row( add_fade_in_tails: bool = True, percentiles_to_fade: List[float] = [1, 99], row_by: Literal["country", "year"] = "country", + add_multiple_lines_day: List[float] | None = None, + add_high_income_pl: Literal["line", "area", None] = None, + filename_suffix: str = "", ) -> None: """ Plot distributional data with seaborn, with each distribution in a separate row. @@ -927,6 +956,7 @@ def distributional_plots_per_row( if row_by == "year": _distributional_plots_year_rows( data=data, + df_main_indicators=df_main_indicators, x=x, weights=weights, country=hue_order[0], @@ -934,11 +964,16 @@ def distributional_plots_per_row( log_scale=log_scale, gridsize=gridsize, period=period, - add_multiple_lines_day=None, + fill=fill, + add_multiple_lines_day=add_multiple_lines_day, + add_ipl=add_ipl, + add_world_median=add_world_median, + add_high_income_pl=add_high_income_pl, width=width, height=height, add_fade_in_tails=add_fade_in_tails, percentiles_to_fade=percentiles_to_fade, + filename_suffix=filename_suffix, ) return None @@ -1009,12 +1044,15 @@ def distributional_plots_per_row( * period_factor ) - # Create a figure with subplots for each country + # Create a figure with subplots for each country. Share both axes so peak + # heights are directly comparable between countries — mirrors the + # share_y_axis / share_x_axis behavior of distributional_plots. fig, axes = plt.subplots( nrows=len(hue_order), ncols=1, figsize=(width / 100, height / 100), - sharex=True, # Share the x-axis across all subplots + sharex=True, + sharey=True, ) for ax, country in zip(axes, hue_order): @@ -1076,23 +1114,10 @@ def distributional_plots_per_row( values=[national_poverty_line], ) - if add_ipl == "line": - # Add a vertical line for the international poverty line - ax.axvline( - x=ipl, - color="lightgrey", - linestyle=":", - linewidth=0.8, - ) - - if add_world_median == "line": - # Add a vertical line for the world median - ax.axvline( - x=world_median_year, - color="lightgrey", - linestyle=":", - linewidth=0.8, - ) + # IPL and world-median lines are constant across rows in this layout + # (one figure per year), so they're drawn once for the whole figure + # outside this loop via `_add_figure_spanning_vline`. Per-row axvlines + # leave a visible gap between subplots. if add_national_lines: # Add a vertical line for the national poverty line @@ -1196,12 +1221,22 @@ def distributional_plots_per_row( plt.tight_layout() + if add_ipl == "line": + _add_figure_spanning_vline( + fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 + ) + if add_world_median == "line": + _add_figure_spanning_vline( + fig, axes, world_median_year, + color="lightgrey", linestyle=":", linewidth=0.8, + ) + # Remove the clipping of the figure for o in fig.findobj(): o.set_clip_on(False) fig.savefig( - f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_rows.svg", + f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_rows{filename_suffix}.svg", bbox_inches="tight", ) plt.close(fig) @@ -1215,14 +1250,20 @@ def _distributional_plots_year_rows( weights: str, country: str, years: List[int], + df_main_indicators: pd.DataFrame | None = None, log_scale: bool = True, gridsize: int = 200, period: Literal["day", "month", "year"] = "day", + fill: bool = False, add_multiple_lines_day: List[float] | None = None, + add_ipl: Literal["line", "area", None] = None, + add_world_median: Literal["line", "area", None] = None, + add_high_income_pl: Literal["line", "area", None] = None, width: int = WIDTH, height: int = HEIGHT, add_fade_in_tails: bool = True, percentiles_to_fade: List[float] = [1, 99], + filename_suffix: str = "", ) -> None: """ Private helper for ``distributional_plots_per_row(row_by="year")``: one country @@ -1230,10 +1271,74 @@ def _distributional_plots_year_rows( """ period_factor = cast(int, PERIOD_VALUES[period]["factor"]) log_ticks = cast(List[int], PERIOD_VALUES[period]["log_ticks"]) + dollar_decimals = 2 if period == "day" else 0 + ipl = INTERNATIONAL_POVERTY_LINE * period_factor + high_income_pl = POVERTY_LINE_HIGH_INCOME * period_factor + + def _world_median_for(year_value: int) -> float | None: + if df_main_indicators is None: + return None + rows = df_main_indicators.loc[ + (df_main_indicators["country"] == "World") + & (df_main_indicators["year"] == year_value), + "median", + ] + if rows.empty: + return None + return float(rows.values[0]) * period_factor data = data[data["country"] == country].copy() data[x] = data[x] * period_factor + def _fade(sub: pd.DataFrame) -> pd.DataFrame: + if not add_fade_in_tails: + return sub + if "percentile" in sub.columns: + pq, bounds = "percentile", percentiles_to_fade + elif "quantile" in sub.columns: + pq, bounds = "quantile", [p * 10 for p in percentiles_to_fade] + else: + return sub + return sub[(sub[pq] > bounds[0]) & (sub[pq] < bounds[1])] + + # Pre-pass: compute the shared x range across years, extended to where each + # year's KDE naturally tapers (data ± cut*bw in log10 space), then unioned. + # Mirrors the share_x_axis logic in distributional_plots. + x_axis_range: tuple | None = None + if log_scale: + x_min = float("inf") + x_max = float("-inf") + for year in years: + sub = _fade(data[data["year"] == year]) + if not len(sub): + continue + year_min = float(sub[x].min()) + year_max = float(sub[x].max()) + v = np.log10(sub[x].to_numpy(dtype=float)) + if weights is not None: + w = sub[weights].to_numpy(dtype=float) + else: + w = np.ones(len(sub)) + mean_v = float(np.average(v, weights=w)) + var_v = float(np.average((v - mean_v) ** 2, weights=w)) + std_v = float(np.sqrt(max(var_v, 0.0))) + w_sum = float(w.sum()) + w_sq_sum = float((w * w).sum()) + n_eff = (w_sum * w_sum / w_sq_sum) if w_sq_sum > 0 else 1.0 + bw = std_v * n_eff ** (-1 / 5) if n_eff > 0 else 0.0 + cut = 3 # seaborn default + year_min = year_min / 10 ** (cut * bw) + year_max = year_max * 10 ** (cut * bw) + x_min = min(x_min, year_min) + x_max = max(x_max, year_max) + if x_min < float("inf"): + x_axis_range = (x_min, x_max) + + if log_scale and x_axis_range is not None: + clip_param = (np.log(x_axis_range[0]), np.log(x_axis_range[1])) + else: + clip_param = None + fig, axes = plt.subplots( nrows=len(years), ncols=1, @@ -1245,19 +1350,12 @@ def _distributional_plots_year_rows( axes = [axes] for ax, year in zip(axes, years): - data_year = data[data["year"] == year] - if add_fade_in_tails: - if "percentile" in data_year.columns: - pq, bounds = "percentile", percentiles_to_fade - elif "quantile" in data_year.columns: - pq, bounds = "quantile", [p * 10 for p in percentiles_to_fade] - else: - pq = None - if pq: - data_year = data_year[ - (data_year[pq] > bounds[0]) & (data_year[pq] < bounds[1]) - ] - sns.kdeplot( + data_year = _fade(data[data["year"] == year]) + # Always draw the line (fill=False) so we have a Line2D to read x/y from. + # If `fill` is requested, layer a full-area shading on top via + # draw_complete_area_under_curve. seaborn's own fill=True returns a + # PolyCollection instead of a Line2D, which breaks draw_area_under_curve. + kde_plot = sns.kdeplot( data=data_year, x=x, weights=weights, @@ -1266,14 +1364,65 @@ def _distributional_plots_year_rows( ax=ax, fill=False, legend=False, + clip=clip_param, ) + if fill: + draw_complete_area_under_curve(kde_plot=kde_plot) if add_multiple_lines_day is not None: - for line_value in add_multiple_lines_day: - ax.axvline( - x=line_value * period_factor, - color="lightgrey", - linestyle=":", - linewidth=0.8, + draw_area_under_curve( + kde_plot=kde_plot, + values=[v * period_factor for v in add_multiple_lines_day], + ) + ref_line_kw = dict(color="lightgrey", linestyle=":", linewidth=0.8) + + # `add_ipl` and `add_high_income_pl` are constant across years, so the line + # is drawn once for the whole figure outside the per-row loop (below) to + # avoid the visible gap between subplots that ax.axvline would leave. + if add_ipl == "area": + draw_area_under_curve(kde_plot=kde_plot, values=[ipl]) + if add_high_income_pl == "area": + draw_area_under_curve(kde_plot=kde_plot, values=[high_income_pl]) + + world_median_year = _world_median_for(year) + if add_world_median == "line" and world_median_year is not None: + ax.axvline(x=world_median_year, **ref_line_kw) + elif add_world_median == "area" and world_median_year is not None: + draw_area_under_curve(kde_plot=kde_plot, values=[world_median_year]) + + # Labels only on the top row, matching the per-country layout. + if ax is axes[0]: + if add_ipl == "line": + ax.text( + x=ipl, + y=ax.get_ylim()[1], + s=f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", + color="grey", + rotation=90, + verticalalignment="top", + horizontalalignment="left", + fontsize=8, + ) + if add_high_income_pl == "line": + ax.text( + x=high_income_pl, + y=ax.get_ylim()[1], + s=f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", + color="grey", + rotation=90, + verticalalignment="top", + horizontalalignment="left", + fontsize=8, + ) + if add_world_median == "line" and world_median_year is not None: + ax.text( + x=world_median_year, + y=ax.get_ylim()[1], + s=f"World median:\n${world_median_year:.{dollar_decimals}f}", + color="grey", + rotation=90, + verticalalignment="top", + horizontalalignment="left", + fontsize=8, ) ax.text( @@ -1294,18 +1443,36 @@ def _distributional_plots_year_rows( ax.tick_params(axis="x", which="both", bottom=False, labelbottom=False) if log_scale: - axes[-1].set_xticks(log_ticks) + # Filter ticks to within the shared x range so set_xticks doesn't widen + # the axis past the data, matching the share_x_axis logic in distributional_plots. + if x_axis_range is not None: + ticks = [t for t in log_ticks if x_axis_range[0] <= t <= x_axis_range[1]] + else: + ticks = log_ticks + axes[-1].set_xticks(ticks) axes[-1].get_xaxis().set_major_formatter( plt.FuncFormatter(lambda v, _: f"${v:g}") ) + if x_axis_range is not None: + axes[-1].set_xlim(*x_axis_range) axes[-1].set_xlabel(f"Income or consumption ({period})") + # Lay out first so axes positions are stable before placing the spanning lines. + fig.tight_layout() + if add_ipl == "line": + _add_figure_spanning_vline( + fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 + ) + if add_high_income_pl == "line": + _add_figure_spanning_vline( + fig, axes, high_income_pl, color="lightgrey", linestyle=":", linewidth=0.8 + ) + for o in fig.findobj(): o.set_clip_on(False) - fig.tight_layout() fig.savefig( - PARENT_DIR / f"{country}_per_year_row_log_{log_scale}.svg", + PARENT_DIR / f"{country}_per_year_row_log_{log_scale}{filename_suffix}.svg", bbox_inches="tight", ) plt.close(fig) @@ -2088,6 +2255,25 @@ def draw_area_under_curve( return None +def _add_figure_spanning_vline(fig, axes, x, **kwargs) -> None: + """Draw a single dashed vertical line across every stacked subplot. + + Per-axis ``ax.axvline(...)`` leaves a visible gap between subplots + (the per-axes line is clipped to its data area). This helper instead + adds a Line2D in a blended transform — data x from ``axes[0]``, figure- + fraction y — so the line spans from the bottom of the last axes to the + top of the first axes uninterrupted. + """ + from matplotlib.lines import Line2D + from matplotlib.transforms import blended_transform_factory + + trans = blended_transform_factory(axes[0].transData, fig.transFigure) + y_top = axes[0].get_position().y1 + y_bottom = axes[-1].get_position().y0 + line = Line2D([x, x], [y_bottom, y_top], transform=trans, **kwargs) + fig.add_artist(line) + + def draw_complete_area_under_curve( kde_plot: plt.Axes, number_of_countries: int = 1 ) -> None: diff --git a/PabloArriagada/distribution_generator/historic_distributions.ipynb b/PabloArriagada/distribution_generator/historic_distributions.ipynb deleted file mode 100644 index 436956ce..00000000 --- a/PabloArriagada/distribution_generator/historic_distributions.ipynb +++ /dev/null @@ -1,565 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 5, - "id": "c44c31ad", - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "from scipy.optimize import minimize\n", - "from scipy.stats import norm\n", - "import matplotlib.pyplot as plt\n", - "import seaborn as sns\n", - "\n", - "\n", - "def generate_synthetic_data_from_mean_gini(target_mean, target_gini, size=100_000_000, seed=2_000):\n", - " \"\"\"\n", - " Generate synthetic data from a lognormal distribution that approximates a given mean and Gini coefficient.\n", - "\n", - " Parameters:\n", - " target_mean (float): Desired mean of the synthetic distribution.\n", - " target_gini (float): Desired Gini coefficient of the distribution.\n", - " size (int): Number of samples to generate (default: 100,000,000).\n", - " seed (int or None): Random seed for reproducibility (default: None).\n", - "\n", - " Returns:\n", - " np.ndarray: Synthetic data array.\n", - " \"\"\"\n", - "\n", - " # Set random seed if provided\n", - " if seed is not None:\n", - " np.random.seed(seed)\n", - "\n", - " # Gini of a lognormal: G = 2 * Φ(σ/√2) - 1\n", - " def lognormal_gini(sigma: float) -> float:\n", - " return 2 * norm.cdf(sigma / np.sqrt(2)) - 1\n", - "\n", - " # Objective function to minimize: match mean and Gini\n", - " def objective(params: np.ndarray) -> float:\n", - " mu, sigma = params\n", - " mean = np.exp(mu + sigma**2 / 2)\n", - " gini = lognormal_gini(sigma)\n", - " # Weighted sum to prioritize Gini matching (since mean is easier to match)\n", - " return 1 * (mean - target_mean) ** 2 + 100 * (gini - target_gini) ** 2\n", - "\n", - " def gini(array: np.ndarray) -> float:\n", - " # Use the definition for population Gini\n", - " array = np.sort(array)\n", - " n = array.size\n", - " index = np.arange(1, n + 1)\n", - " return (2 * np.sum(index * array)) / (n * np.sum(array)) - (n + 1) / n\n", - "\n", - " # Initial guess\n", - " initial_guess = [np.log(target_mean), 1.0]\n", - "\n", - " # Use a deterministic optimizer and tighter tolerance for reproducibility\n", - " result = minimize(\n", - " objective,\n", - " initial_guess,\n", - " bounds=[(None, None), (1e-6, None)],\n", - " method=\"L-BFGS-B\",\n", - " options={\"ftol\": 1e-12, \"gtol\": 1e-8, \"maxiter\": 1e12}\n", - " )\n", - " mu_opt, sigma_opt = result.x\n", - "\n", - " # Use a fixed random seed for reproducibility\n", - " rng = np.random.default_rng(seed)\n", - " synthetic_data = rng.lognormal(mean=mu_opt, sigma=sigma_opt, size=size)\n", - "\n", - " # Calculate the mean and Gini of the generated data\n", - " generated_mean = np.mean(synthetic_data)\n", - " generated_gini = gini(synthetic_data)\n", - "\n", - " return synthetic_data, generated_mean, generated_gini, target_mean, target_gini\n", - "\n", - "synthetic_data_uk_gapminder, generated_mean_uk_gapminder, generated_gini_uk_gapminder, target_mean_uk_gapminder, target_gini_uk_gapminder = generate_synthetic_data_from_mean_gini(target_mean=3784.226727, target_gini=0.5845)\n", - "synthetic_data_uk_moatsos, generated_mean_uk_moatsos, generated_gini_uk_moatsos, target_mean_uk_moatsos, target_gini_uk_moatsos = generate_synthetic_data_from_mean_gini(target_mean=1250.072, target_gini=0.5927)\n", - "synthetic_data_uk_mpd_gapminder, generated_mean_uk_mpd_gapminder, generated_gini_uk_mpd_gapminder, target_mean_uk_mpd_gapminder, target_gini_uk_mpd_gapminder = generate_synthetic_data_from_mean_gini(target_mean=3306, target_gini=0.5845)\n", - "synthetic_data_uk_mpd_moatsos, generated_mean_uk_mpd_moatsos, generated_gini_uk_mpd_moatsos, target_mean_uk_mpd_moatsos, target_gini_uk_mpd_moatsos = generate_synthetic_data_from_mean_gini(target_mean=3306, target_gini=0.5927)\n", - "\n", - "synthetic_data_sweden_gapminder, generated_mean_sweden_gapminder, generated_gini_sweden_gapminder, target_mean_sweden_gapminder, target_gini_sweden_gapminder = generate_synthetic_data_from_mean_gini(target_mean=1619.685668, target_gini=0.4956)\n", - "synthetic_data_sweden_moatsos, generated_mean_sweden_moatsos, generated_gini_sweden_moatsos, target_mean_sweden_moatsos, target_gini_sweden_moatsos = generate_synthetic_data_from_mean_gini(target_mean=445.4332, target_gini=0.5544166)\n", - "synthetic_data_sweden_mpd_gapminder, generated_mean_sweden_mpd_gapminder, generated_gini_sweden_mpd_gapminder, target_mean_sweden_mpd_gapminder, target_gini_sweden_mpd_gapminder = generate_synthetic_data_from_mean_gini(target_mean=1415, target_gini=0.4956)\n", - "synthetic_data_sweden_mpd_moatsos, generated_mean_sweden_mpd_moatsos, generated_gini_sweden_mpd_moatsos, target_mean_sweden_mpd_moatsos, target_gini_sweden_mpd_moatsos = generate_synthetic_data_from_mean_gini(target_mean=1415, target_gini=0.5544166)" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "id": "d2bb9684", - "metadata": {}, - "outputs": [], - "source": [ - "def plot_synthetic_data(data, mean, gini, original_mean, original_gini, country, source, ipl):\n", - "\n", - " kde_plot = sns.kdeplot(\n", - " data=data,\n", - " log_scale=True,\n", - " fill=True,\n", - " )\n", - "\n", - " # Customize x-axis ticks to show 1, 2, 5, 10, 20, 50, 100, etc.\n", - " # kde_plot.set(xscale=\"log\")\n", - " kde_plot.set_xticks([\n", - " 100,\n", - " 200,\n", - " 500,\n", - " 1000,\n", - " 2000,\n", - " 5000,\n", - " 10000,\n", - " 20000,\n", - " 50000,\n", - " 100000,\n", - " 200000,\n", - " ])\n", - " kde_plot.get_xaxis().set_major_formatter(plt.ScalarFormatter())\n", - "\n", - " # Make the plot wider\n", - " fig = kde_plot.get_figure()\n", - " fig.set_size_inches(10, 6)\n", - "\n", - "\n", - " # Add a title mentioning mean, gini, country, and source\n", - " kde_plot.set_title(\n", - " f\"Mean: {mean:.2f} (original {original_mean:.2f}), Gini: {gini:.2f} (original {original_gini:.2f}), Country: {country}, Source: {source}\",\n", - " fontsize=16,\n", - " )\n", - "\n", - " # Plot dotted vertical line for ipl\n", - " kde_plot.axvline(x=ipl*365, color='gray', linestyle='--', label=f'IPL: {ipl:.2f} a day')\n", - "\n", - " # Estimate the percentage below this line\n", - " percentage_below_ipl = np.sum(data < ipl*365) / len(data) * 100\n", - "\n", - " kde_plot.text(\n", - " ipl*365 * 0.90,\n", - " kde_plot.get_ylim()[1] * 0.05,\n", - " f\"{percentage_below_ipl:.1f}% living below {ipl:.2f} a day\",\n", - " color='gray',\n", - " fontsize=12,\n", - " ha='center',\n", - " rotation=90,\n", - " )\n", - "\n", - "\n", - " plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "id": "9297d9af", - "metadata": {}, - "outputs": [], - "source": [ - "def plot_country_distributions(country=\"UK\"):\n", - " \"\"\"\n", - " Plot all synthetic distributions for a specific country in a single figure.\n", - "\n", - " Parameters:\n", - " country (str): Either \"UK\" or \"Sweden\"\n", - " \"\"\"\n", - " # Set up the figure\n", - " plt.figure(figsize=(14, 8))\n", - "\n", - " # Define colors for each distribution\n", - " colors = plt.cm.Set1(np.linspace(0, 1, 4))\n", - "\n", - " if country == \"UK\":\n", - " # List of UK distributions with their metadata\n", - " distributions = [\n", - " (synthetic_data_uk_gapminder, \"UK - Gapminder (2017 prices)\", colors[0], 2.15),\n", - " (synthetic_data_uk_moatsos, \"UK - Moatsos (2011 prices)\", colors[1], 1.90),\n", - " (synthetic_data_uk_mpd_gapminder, \"UK - MPD + Gini Gapminder (2011 prices)\", colors[2], 1.90),\n", - " (synthetic_data_uk_mpd_moatsos, \"UK - MPD + Gini Moatsos (2011 prices)\", colors[3], 1.90),\n", - " ]\n", - " elif country == \"Sweden\":\n", - " # List of Sweden distributions with their metadata\n", - " distributions = [\n", - " (synthetic_data_sweden_gapminder, \"Sweden - Gapminder (2017 prices)\", colors[0], 2.15),\n", - " (synthetic_data_sweden_moatsos, \"Sweden - Moatsos (2011 prices)\", colors[1], 1.90),\n", - " (synthetic_data_sweden_mpd_gapminder, \"Sweden - MPD + Gini Gapminder (2011 prices)\", colors[2], 1.90),\n", - " (synthetic_data_sweden_mpd_moatsos, \"Sweden - MPD + Gini Moatsos (2011 prices)\", colors[3], 1.90),\n", - " ]\n", - " else:\n", - " raise ValueError(\"Country must be either 'UK' or 'Sweden'\")\n", - "\n", - " # Plot each distribution\n", - " for data, label, color, ipl in distributions:\n", - " sns.kdeplot(\n", - " data=data,\n", - " log_scale=True,\n", - " fill=False,\n", - " alpha=0.8,\n", - " linewidth=3,\n", - " label=label,\n", - " color=color\n", - " )\n", - "\n", - " # Customize x-axis\n", - " plt.xscale('log')\n", - " plt.xticks([100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000, 100000, 200000])\n", - " plt.gca().get_xaxis().set_major_formatter(plt.ScalarFormatter())\n", - "\n", - " # Add vertical lines for IPL thresholds\n", - " plt.axvline(x=2.15*365, color='red', linestyle='--', alpha=0.7, linewidth=2, label='IPL: $2.15/day (2017 prices)')\n", - " plt.axvline(x=1.90*365, color='orange', linestyle='--', alpha=0.7, linewidth=2, label='IPL: $1.90/day (2011 prices)')\n", - "\n", - " # Customize the plot\n", - " plt.xlabel('Annual Income (log scale)', fontsize=14)\n", - " plt.ylabel('Density', fontsize=14)\n", - " plt.title(f'{country} - Synthetic Income Distributions by Data Source', fontsize=16, fontweight='bold')\n", - " plt.legend(bbox_to_anchor=(1.05, 1), loc='upper left', fontsize=11)\n", - " plt.grid(True, alpha=0.3)\n", - "\n", - " # Adjust layout to prevent legend cutoff\n", - " plt.tight_layout()\n", - " plt.show()\n", - "\n", - "\n", - "def plot_country_distributions_with_stats(country=\"UK\"):\n", - " \"\"\"\n", - " Plot all synthetic distributions for a specific country with detailed statistics.\n", - "\n", - " Parameters:\n", - " country (str): Either \"UK\" or \"Sweden\"\n", - " \"\"\"\n", - " # Set up the figure with subplots\n", - " fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(20, 8))\n", - "\n", - " # Define colors for each distribution\n", - " colors = plt.cm.Set1(np.linspace(0, 1, 4))\n", - "\n", - " if country == \"UK\":\n", - " # List of UK distributions with their metadata and statistics\n", - " distributions_data = [\n", - " (synthetic_data_uk_gapminder, generated_mean_uk_gapminder, generated_gini_uk_gapminder,\n", - " target_mean_uk_gapminder, target_gini_uk_gapminder, \"UK - Gapminder (2017 prices)\", colors[0], 2.15),\n", - " (synthetic_data_uk_moatsos, generated_mean_uk_moatsos, generated_gini_uk_moatsos,\n", - " target_mean_uk_moatsos, target_gini_uk_moatsos, \"UK - Moatsos (2011 prices)\", colors[1], 1.90),\n", - " (synthetic_data_uk_mpd_gapminder, generated_mean_uk_mpd_gapminder, generated_gini_uk_mpd_gapminder,\n", - " target_mean_uk_mpd_gapminder, target_gini_uk_mpd_gapminder, \"UK - MPD + Gini Gapminder (2011 prices)\", colors[2], 1.90),\n", - " (synthetic_data_uk_mpd_moatsos, generated_mean_uk_mpd_moatsos, generated_gini_uk_mpd_moatsos,\n", - " target_mean_uk_mpd_moatsos, target_gini_uk_mpd_moatsos, \"UK - MPD + Gini Moatsos (2011 prices)\", colors[3], 1.90),\n", - " ]\n", - " elif country == \"Sweden\":\n", - " # List of Sweden distributions with their metadata and statistics\n", - " distributions_data = [\n", - " (synthetic_data_sweden_gapminder, generated_mean_sweden_gapminder, generated_gini_sweden_gapminder,\n", - " target_mean_sweden_gapminder, target_gini_sweden_gapminder, \"Sweden - Gapminder (2017 prices)\", colors[0], 2.15),\n", - " (synthetic_data_sweden_moatsos, generated_mean_sweden_moatsos, generated_gini_sweden_moatsos,\n", - " target_mean_sweden_moatsos, target_gini_sweden_moatsos, \"Sweden - Moatsos (2011 prices)\", colors[1], 1.90),\n", - " (synthetic_data_sweden_mpd_gapminder, generated_mean_sweden_mpd_gapminder, generated_gini_sweden_mpd_gapminder,\n", - " target_mean_sweden_mpd_gapminder, target_gini_sweden_mpd_gapminder, \"Sweden - MPD + Gini Gapminder (2011 prices)\", colors[2], 1.90),\n", - " (synthetic_data_sweden_mpd_moatsos, generated_mean_sweden_mpd_moatsos, generated_gini_sweden_mpd_moatsos,\n", - " target_mean_sweden_mpd_moatsos, target_gini_sweden_mpd_moatsos, \"Sweden - MPD + Gini Moatsos (2011 prices)\", colors[3], 1.90),\n", - " ]\n", - " else:\n", - " raise ValueError(\"Country must be either 'UK' or 'Sweden'\")\n", - "\n", - " # Plot distributions on the first subplot\n", - " for data, gen_mean, gen_gini, orig_mean, orig_gini, label, color, ipl in distributions_data:\n", - " # Extract short label without price year for legend\n", - " short_label = label.split(' (')[0].split(' - ')[1]\n", - " price_year = \"2017\" if \"2017\" in label else \"2011\"\n", - "\n", - " sns.kdeplot(\n", - " data=data,\n", - " log_scale=True,\n", - " fill=False,\n", - " alpha=0.8,\n", - " linewidth=3,\n", - " label=f\"{short_label} ({price_year}) - μ={gen_mean:.0f}, G={gen_gini:.2f}\",\n", - " color=color,\n", - " ax=ax1\n", - " )\n", - "\n", - " # Customize first subplot\n", - " ax1.set_xscale('log')\n", - " ax1.set_xticks([100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000, 100000, 200000])\n", - " ax1.get_xaxis().set_major_formatter(plt.ScalarFormatter())\n", - "\n", - " # Add vertical lines for IPL thresholds\n", - " ax1.axvline(x=2.15*365, color='red', linestyle='--', alpha=0.7, linewidth=2, label='IPL: $2.15/day (2017)')\n", - " ax1.axvline(x=1.90*365, color='orange', linestyle='--', alpha=0.7, linewidth=2, label='IPL: $1.90/day (2011)')\n", - "\n", - " ax1.set_xlabel('Annual Income (log scale)', fontsize=12)\n", - " ax1.set_ylabel('Density', fontsize=12)\n", - " ax1.set_title(f'{country} - Synthetic Income Distributions', fontsize=14, fontweight='bold')\n", - " ax1.legend(bbox_to_anchor=(1.05, 1), loc='upper left', fontsize=9)\n", - " ax1.grid(True, alpha=0.3)\n", - "\n", - " # Create statistics table for the second subplot\n", - " stats_data = []\n", - " for data, gen_mean, gen_gini, orig_mean, orig_gini, label, color, ipl in distributions_data:\n", - " # Calculate poverty rate using the appropriate poverty line for each source\n", - " if \"Gapminder\" in label and \"2017\" in label:\n", - " # Gapminder uses 2017 prices, so use $2.15/day line\n", - " poverty_rate = np.sum(data < 2.15*365) / len(data) * 100\n", - " poverty_line = \"$2.15/day (2017)\"\n", - " price_year = \"2017\"\n", - " else:\n", - " # Moatsos and MPD use 2011 prices, so use $1.90/day line\n", - " poverty_rate = np.sum(data < 1.90*365) / len(data) * 100\n", - " poverty_line = \"$1.90/day (2011)\"\n", - " price_year = \"2011\"\n", - "\n", - " # Shorten label for table\n", - " short_label = label.split(' (')[0].split(' - ')[1]\n", - "\n", - " stats_data.append([\n", - " short_label,\n", - " price_year,\n", - " f\"{orig_mean:.0f}\",\n", - " f\"{gen_mean:.0f}\",\n", - " f\"{orig_gini:.3f}\",\n", - " f\"{gen_gini:.3f}\",\n", - " f\"{poverty_rate:.1f}%\"\n", - " ])\n", - "\n", - " # Create table\n", - " ax2.axis('tight')\n", - " ax2.axis('off')\n", - "\n", - " headers = ['Source', 'Price\\nYear', 'Target\\nMean', 'Generated\\nMean', 'Target\\nGini', 'Generated\\nGini',\n", - " 'Extreme\\nPoverty Rate']\n", - "\n", - " table = ax2.table(cellText=stats_data, colLabels=headers, cellLoc='center', loc='center')\n", - " table.auto_set_font_size(False)\n", - " table.set_fontsize(9)\n", - " table.scale(1.3, 2.2)\n", - "\n", - " # Color code the table rows to match the distributions\n", - " for i, (_, _, _, _, _, _, color, _) in enumerate(distributions_data):\n", - " for j in range(len(headers)):\n", - " table[(i+1, j)].set_facecolor(color)\n", - " table[(i+1, j)].set_alpha(0.3)\n", - "\n", - " ax2.set_title(f'{country} - Distribution Statistics\\n(Gapminder: $2.15/day 2017, Others: $1.90/day 2011)',\n", - " fontsize=12, fontweight='bold')\n", - "\n", - " plt.tight_layout()\n", - " plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "id": "2891c241", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "UK Distribution Analysis:\n", - "==================================================\n" - ] - }, - { - "data": { - "image/png": "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t6ObQQghCYXT6RSHw9HsQpAUZQkhhJDOyMBjoq87ppF1hBBCCOmyBINBWbNmjZSWlnZ0UwghJCGBKNuzZ0/JyspqUpylKEsIIYQQQgghhJCwIAtBITU1tdluL0II6eoEg0Hx+XxSXl4uBQUFUlNTI7169Wr0NRRlCSGEEEIIIYSQLg4iC7Qgm5OT09HNIYSQhCQjI0OSkpKksLBQfZ7CORsNFvoihBBCCCGEEEK6ODpDFg5ZQgghrSctLU05Z5vK5qZTlhBCCOmM/HaySF2RSFKOyPYvmtedfLJIUZEIXDAvWtYRQgghpEvDyAJCCGmfz1E6ZQkhhBBCCCGEEEIIIaQdoShLCCGEEEIIIYSQTsEJJ5wgV111VcR1WI71mt12200effTRBs+77bbbZLPNNpP3339/o9tTVVUljz/+uBx88MGy1VZbyZgxY+SQQw6R5557Tjwej8RzfzWXaP0YC7755hs5++yzw4+/++47Oeyww2TLLbdU+7377rultrY2vL6urk5uvvlm2X777dVzLr30UikuLo647WXLlqnzsXLlyvCy9957T4YNGxbxduKJJ8b02KzjsS35999/5fDDD1eFqEj8wPgCQgghhBBCCCGEkA2C7BtvvCH33nuvHHDAARu1rXXr1inRDYV+ICyOHj1aLf/zzz/l4Ycflt9++02Jsx0ZGQExtbFCRB1JWVmZ3HrrrfLyyy+H++28886TCy64QPbZZx8lqt5www2qQN2dd96pnnPTTTep5+G43G633Hjjjer5r776qmnbixYtkjPOOENqampMy/fbbz/ZaaedTMu++OILtf2zzjorpsd37bXXqgJ77cHmm28um2yyiRpvsT4O0nrolCWEEEIIIYQQQkiX5/bbb5c333xTHnjggY0WZAEEQxT6efvtt+XAAw+U/v37q9uhhx4qzz//vPz666/y008/SUeSnZ2tqsXHIy+99JISsgcMGKAe49yMGzdOiYoDBw6UCRMmyMUXXywff/yxch2vXbtWPvjgA7nuuutk7NixMmrUKHUup02bJn/99Vd4u08//bRyjWZlZTXYZ3JysvTo0SN8g2gKAf2cc86RHXbYIabHh35H/7cXp556qjzzzDNSUVHRbvskjUNRlhBCCCGEEEIIIREJBgISKC3tkBv23V7ccccdSvR75JFHZO+9997o7S1fvly+//575dJMT09vsB6uxc8//1x23nnn8LJ33nlHibcQEzGt/thjj5V//vknvB7T9Z944gk57bTT1HP23HNP9Rrj1Hssw3HssssuStDE/iFWXnbZZWo6P/b37rvvRowv0K/X91tssYUSkKdPnx5+PgS9K6+8Uome2223nbzwwgsNjm3GjBly3HHHqTaiHYgTqKysNB0HYgfgSoXI+scffzTYBmIIXnvtNdl3331NoiL2bcRutyvhG9vX7US7NIMGDZK8vDwlzBojEeB8tW4rEnBM9+zZU7lqo/H777+reIOvvvpK9thjD3XuTj75ZOXGNfbz9ddfL0cccYTqu48++qhBfAGcv3BUb7311qpfLrnkEilCcd4NTJ48WfUH+hX3EK0DhvcIBOn9999fRo4cqdy+uMhgjMgYOnSo9O7dW956660mj5u0D4wvIIQQQgghhBBCSANqf/pZKp98UgmkHYE9O1vSzz5bknc2TyePNXfddZcSuOCGhGAYC7TQiGzTaMDtqfn666/llltuUfEJEO3Wr1+vpu7D9fnhhx+GnwdRFk5RTH2HyxZu3LS0NCVwgtWrV6vp9nBEFhQUqGOaOnWqEvvw96RJk9QU/9133126devWoE14DURdiJHYLp4L8RCCI2IWLrroIrWPp556Sq1H361atSr8+rlz58opp5yi9gdRsLCwUO655x4lqEIM1FENiBOAYxVuUQiaVhBBUF5ebhKtMQXfCMTYF198UYnH3bt3V+IzjikpKcn0PIiqa9asCT/WQjbE1MaYN2+efPLJJyoTGFEITYG+QFxCfn6+6j9k0OJcaCcy9ovlOF64cOGU1uBYIWRjHcYixGacW/T3K6+8ovoOrl8sgyiLjFiMDxzzFVdcofodY+W+++5T6yEII08X/YHzroFI/u2338rpp5/e5PGQtoeiLCGEEEIIIYQQQhpQ8cgjEqyq6rD9QwxGG9pSlEW0AAQxFOGCUIhp7X369Nno7WqHI8RCIxBcjTmicMZCjMU0doiYBx10kFqONqAtWGdk/PjxKlcVDB48WGbOnKlEPC3KopATHJlDhgxRzsjhw4eLy+VSQinAPcTBpUuXRhRlIXTC2YpCZ/r55557rhKJ4Ub95ZdflBCK4wD333+/7LrrruHXI5Zhxx13DOeWQnjGc+AghVANByhA9EBjcQB///236gMIv5HAcUKMXLBggXLUAuTD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uklmzZol33zzjUyaNElOPPHEsGu2trZW/X3kkUfK22+/LR988IEsW7ZMxRnAJXvIIYd08FEQQgghpLnUVZTIn8/dLLWlhQ3W5Y3cQbbqtqVsuTZdRlb3lF6ejPA6W3KyOPv2k/WDs6Tk7CMk6d57xdG7j+n1geJiKbn8SiXQEkIIIaTrgFm1V111VcR1WG6cdbvbbrvJo48+2uB5t912mzKOoW5Na1m5cqUMGzZM3TDbNxKIYcT633//XWKF1+uVF198UToaaDQ4vqqqKvV4wYIFKm5y3Lhxsv3228sFF1zQYLbza6+9JrvvvruMGjVKFXb/999/I24bBeEPOuggee+996LWFDKe51hiHUNtCY7/8MMPVzPKSeckbkRZgGJdI0aMkJNOOkluvvlmOf/882WvvfZS68aPHy+fffaZ+nu//faT66+/Xr3RIOTOmDFDXnrppahFvgghhJAux/YviuzycejeCr6of/xx6L6D8FRXyJ/P39LAIZue11/GnX2HDClLFflhijjFLilBl/TzZsqAQK448vPF0a+f2FJCefNLf/1UyoOVkn3vPeIcPNi0rWBlhZQ/+LAEA4F2PTZCCCGEJC4QZFFM/N57742J8cvlcsmXX37ZYPncuXPVjN9Y88knn8idd94pHQ00m//973+SlpamoipR4wfxlK+88oo8++yzUlxcLKeffroSWAEE8HvuuUcuvPBCJbZiJjReg+cZqaiokHPOOUfmzZsXcb8Qdh966KE2O65rr702opDfFmy++eayySabyHPPPdcu+yNdXJSFW/buu++Wv/76S37++Wc5+eSTw+vwhjv00EPDj4844gj5/PPP1XNff/11JeYSQgghJP7xez0yfdJtUrl2hWl5Wo++ss3pN4prygyp+egj0zqbyy3Drr9PRp58pdhs5q8viz59QQKpSZJ9913i2nxz0zrvrJlS+/kXbXg0hBBCCOks3H777fLmm2/KAw88IAcccEBMtglX6BdfNPwuAtPZ2LFjpa2KInYkU6dOVaLzwQcfrB5jJnR1dbUSXVG0fYsttlCiN2IpYbIDTz31lBx//PHKAQsh8o477lAa0TvvvBPe7nfffafWQ+S1snbtWjnrrLPUTOqBAwe22bFlZGRIdna2tBennnqqPPPMM0qMJp2PuBJlCSGEENL5Wfz9ZClfZc6GT+meJ2NPv0HsRaVS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mhldlK1cu0JqS9dLTYqOLhBxJadKZmamulnzZBENgNzW9qZ3b7MT2R+0ieSYs2YLF9S7Yd1bjjGt88z4K+ykJYQQQgghhJBYQVGWEEIIaQfKCyqkqrgmLqMLNH0tEQYlK8qkqri60eiCuuRu6rHN4RK7yy19+/aVYGmpeC0VbZO2bd/oAk1aWppkZ2ebF+ZvEj1XdoxZlA0Urhf/arOYTgghhBBCCCEbC0VZQgghpB1YPXut6XFa9xTJ7psp8QSiFNxpoSgCzepZ5nZrCufNEJ8rNRxdAJesdqbCXSoGd6ktOVlcI7eQjsIaYVDtzDRFGJQs+VcCfp/629G/v9hz6t2/wIvjIYQQQkhCcMIJJ8hVV10VcR2WY71mt912k0cffbTB82677TbZbLPN5P333291O1auXCnDhg1Ttzlz5kR8zr777qvW//777+ox2qJfo28jR46UvffeW5566ikJBALqee+9957pOcOHD5etttpKjjnmGPnyyy+lrcDsIewbfbjddtvJFltsIXvuuafcfvvtsn79+gbHro+rKfA8PB+vi4TulwMPPDDi+r///lutx/mMJatXr5ZPP/1UOpoXX3xRjUnN5MmTVV+MGTNG9tprL3nmmWfE7/eH15eUlMill14q22yzjWy77bZy8803S02N2RyimT59uhrrkairq5ODDjpInfO2YNiwYW22bSt33HGH6sd4g6IsIYQQ0g4UzFlnetxrRF6HTOdvDLvDLr1H9DQtWzWrYYSBz1MrpcvnS+0GlyxwJqcqV2pGRoZ4ZtU7T4Fr9Gixuc1ib0eKskGnWzzujPBjv6dWylYsUH/jnFjdsp6/mStLCCGEdBUgfr3xxhty7733yiGHHLLR23O5XBGF0rlz58qSJUsaLM/Pz5dffvklfPv888/lxBNPlIcfflheeOEF03P1c3788Ud5/fXXZcstt5QLL7xQ3n77bYk1EITPPfdcueuuu2TXXXeVV155Rb766iu57rrr5J9//pHDDjtMioqK1HN79eql2oX2NAc8D8/H6xrrx/nz50fss88++6xNvldfeeWV8vPPP0tHsnz5cpk0aZKcf/756vFHH30kN954oxx//PHq74suukiefvppefLJJ8OvueCCC2TZsmVKhMS4wfi46aabIgqy55xzTljsN1JRUaHWzbPMfoslv/zyi+y3337SHpx33nny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MShLRERERERERERElEAMyhIRERERERERERElEIOyRERERERERERERAnEoCwRERERERERERFRAjEoS0RERERERERERJRADMoSERERERERERERJRCDskRElDDnnnsuRo0ahV/96lcwupUrV6pjefzxxw+77oIFC9S61Nm+ffswbdo0bNmyRc0/8cQT6lx98cUXOJV85StfUccdCoWOetuPP/4YZ5xxBpqbm09I34iIiIiIqPsxKEtERAmxatUqlJaWIj09Hf/4xz8QCASS3SVKAd///vdVsH78+PHJ7ophSdB/6NCh+OlPf5rsrhARERER0RFiUJaIiBLi9ddfh8ViwS233IK6ujp88MEHye4SJdm///1vrF69GnfddVeyu2J43/rWt9SXHXI+iYiIiIgo9TEoS0REJ5zL5cJ//vMfTJgwARdffLFqe/nll5PdLUoiTdPw7LPP4qyzzkJhYWGyu2N4EydOVL9fTz/9dLK7QkRERERER4BBWSIiOuHeeecdeL1ezJ07FwMGDFABJClnUFJS0qmu5qJFi1BUVISvfe1rqtbolClTcOONN2Ljxo2dbtmWrFvJDLzuuuvUerL+HXfcgd27d+vWlVqdX/7ylzv1S+rByjKpDxsjZRWee+45XH755Wqfclv9mWeeqW6zlwzf7iKv+8Mf/hDvv/++ei05JzNnzsR9992H6urqTuu/99576jjlGE877TR1rjrWXfX5fHjyySfVOZR+y3q33XYbNmzYoFsvVrd1586d+M53vqNed/LkyWqf0tbQ0IAHHnhAtU+fPh1f/epXsWfPnk59evPNN3HllVeqbeVcXXvttaq+6ZH4/PPPUVxcjAsvvPCIs2qvuuoq9VrykOf/+te/Oq0n10+O75xzzlFBysWLF6ss7e9973tHVNd327Zt6pydfvrp6hyeffbZeOSRR9DY2KhbLxgM4plnnlH9nzRpklpfslU7nqetW7eqdqn5KvubOnUqrr76avU7cTiRSAR/+ctf1BcZ8vMRuxZr167tcv0LLrggfl6JiIiIiCi1MShLREQnnATFhATIxJIlS9T0b3/7W6d16+vrVfAxKysL9957rwr0rVmzRgVmm5qadOtKAPF//ud/VD3N7373uypA9tFHH6nAVTgcPqa+3n333WogMgngScBSgqTDhw/Hq6++ittvvx3daenSpbj//vtV8FSCvhK0lkCj9KG9p556SrXJQE4SMLzzzjtVgFiO87///a9aR4Le119/vQpIDhs2TJ0POXcSzJbpu+++2+n15dzV1NTgm9/8pgpyynmW/ct+ZP/ympdddhmWLVumSgxIkDDml7/8Jf73f/8XmZmZKugo58btduPrX/86/vznPx/22D/88EOYTCbMmTPnsOs+/PDD6mdBAqFy7PLw+/3q2kjAtH32rfRDAtOjR49W10/O7Q9+8AP1eodTXl6OG264AWVlZbjpppvwox/9CLNnz8aLL76oviSQ/Qs5DzL/61//Gv369VP9kPMn50nOdUVFhVpPguHSLoOYyc+07E8C3xK4lXMuAdRD+fa3v62Ob9CgQern5Oabb8bevXvVPiRI35H8/MTOLRERERERpTiNiIjoBNq1a5c2cuRI7YILLoi3VVZWaqNHj9amT5+ueTyeePt1112n1v3973+v28cTTzyh2l955ZV421lnnaXa/v3vf+vW/c53vqPaly5dGm+T+auvvrpT3x577DG1bMWKFWp++/btav7HP/5xp3WvuOIKtayurk7NyzYyL/s4nFhf25N5eaxdu1bXHjsHe/bsUfNlZWXamDFjtGuvvVbz+/3x9RoaGrTTTjtNu/jii9X8k08+qbb7zW9+o9ufnGtZb9q0aVpzc7Nq++1vf6vWvfnmm7VIJBJf97bbblPtt99+u24fd911l2ovLS1V8xs3blTzDz74oG69QCCgfeUrX9HGjRunHThw4JDnZOHChdqCBQs6tcf6tmzZMjW/evVqNX/99der/cfIuZBzIstWrlyp2t59990ur5/8jMTO96E899xzah05vvZ+8pOfaJdeeqk6l+KNN95Q6/3yl7/Urbdq1SrV/uijj6r5O+64Qxs/fnx8u5hPPvlErffQQw91uu7BYFDNv/3222r+2Wef1W3rcrm0RYsWaTNnztT97ohQKKRNmDBB7YuIiIiIiFIbM2WJiOiEeu211+K3Vsf07t1b3YotmZ9vv/12p20uuugi3bzc9i0kq7M9u92ubtU/knWPhGRXyq3hkqHYnmSNSuaukGzQ7tK/f391O3tX/a+trVVTyfyVrF/JjpTjjcnNzcVLL72E3/3ud2peMicdDgduvfVW3f7kXEuWZktLS6fMTMlclmzVGMmwFeeff75uPcnUFFVVVWr61ltvxbeXzObYQ15D2iSj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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAB8AAAAMWCAYAAACOaJwrAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3QV4XGXaxvFnJJ66K1a8tEBxd4dFFv/wBYou7rbYIosty+K2LLAsi7u7FPciLXVLm1rSpNH5rvtN3+mZySSZuPT/u665msxM5sicpHPO/T7PG4rFYjEDAAAAAAAAAAAAAKCTC7f3CgAAAAAAAAAAAAAA0BIIwAEAAAAAAAAAAAAAXQIBOAAAAAAAAAAAAACgSyAABwAAAAAAAAAAAAB0CQTgAAAAAAAAAAAAAIAugQAcAAAAAAAAAAAAANAlEIADAAAAAAAAAAAAALoEAnAAAAAAAAAAAAAAQJdAAA4AAAAAAAAAQAurrq62jqYjrlNrr3dLbnNn3X8AsKIhAAcAAAAAAAAAtIgjjjjC1lxzTbvssstqPXbBBRe4x4477rgGnz9jxgzbZptt3GMbbLCBffHFF81eN71W8Lb22mvbhhtuaAcccIA99dRTtZ6/ww47uOfdc889jVrOkiVL7KabbrL77rsvrecnL2fcuHHxdZw7d26jlt2YdXr66afdMtZbbz1ra++8844dffTRtskmm9i6665rW221lZ1++un2008/JTyvvLzc7r//frv22mvbfZt1DO6///4tcowAAFoXATgAAAAAAAAAoMOYP3++C8nnzJljWVlZ9s9//tM22mijFnv9nj17Wv/+/a1Hjx5WWlpqP/zwg1100UV29dVXJzyvX79+NmDAAMvLy2vU6x911FEuEC0rK0vr+U1dTnPXKScnxy134MCB1paeffZZGzt2rH3yySdWUlJi+fn5Nm/ePHvttdfskEMOse+//z7+3HPPPdduuOEGKy4ubtdtfu+99+zwww+38ePHt/l7BwBovGgTfgYAAAAAAAAAgBanqt0TTjjBJk2aZBkZGfb3v//dNt988xZdhqrN99xzT/e1glUFrE888YQ98sgjttNOO9lmm23mHtN9TdHYsLapy2nuOu2+++7u1tbuuOMO96+qqS+//HLLzs62adOm2ZFHHmkzZ850ofXtt99e53q3xzbXtR5t8d4BABqPCnAAAAAAAAAAQLurqKhwbbBVARyJRFz76u22265Vl6nqY4WwQ4YMcd//97//rbe99csvv2x//OMfXUW6WrP/4Q9/sCeffDLhZxTeyz/+8Q/386JAV1+feuqpLoAfPXq0C2LV4ru+Ntq//vqrq4pWy+5dd93VVU9706dPj7dK/+abb+L36/V1n9rL17dOdbUD/+WXX9z7oIEAo0aNsv32269Wi3jfzv766693r6N10+sceOCB9t1339W7z1XZ7/e9wm8ZNmyYXXrppXbssce6tvSi9f/www/d188884xbnrZZPvroIzvssMNs4403dsvVwIWbb77ZHUON3eaCggK7+OKLbfvtt3f3qx372Wef7drw+58566yz4s/Xz/uAPtV7p4pzHbt6bOTIke511cI9GKLrGD/++ONtiy22cPtY66+BGOl2DQAA1I8KcAAAAAAAAABAu1Oo6gPP8847z4WqbUFh+6abbuqCzmCQnOzdd9+1M888Mx7ehsNh+/nnn+2SSy5xr6GKZrXEVsBbWVnp2mLrecmvocd0//Dhwy0zM7PedTvllFMsFou52+TJk+3888+3aDRqe+21V9rb19A6BWn7VYmtIFbbpBb0mpdbLeInTJjglh/0+uuv2wMPPOBeU2G+wm+F52+88Yar4E9F+/r999+3f/3rX25/aJDDlltu6QJ3hcZer1693P7R66p1effu3d22a1DAiSee6MJubY+Wowryu+++262HOgg0ZptPPvnk+KALtcVXC/4XX3zR3ffSSy+5Zatt/sKFC93z1fK8rtfT+6TX88ex1nnWrFn28MMPu4EF+leB+zHHHGNFRUVu/+bm5rr111znWvZ1113XwDsKAGgIFeAAAAAAAAAAgHb1wgsvuNDR++CDD9p0+X379nX/FhYW1vkchbai8PmLL75wN1V0q8LXVx6rJbaqmUUhp/8ZT8/729/+5n5WVcENUTXy559/7ubLVqWw3HnnnY3atobWKeiKK65w4beq2xXifvnll3bGGWe4xxR0//jjjwnPV5W0qp/1vHPOOcfdp8D3t99+q3cZK6+8svt66tSpLghXoK0Q/K9//aubl13U/n6TTTZxX++2225uvTV395QpU9y+0PugfaN96duaf/31143aZgXOfs5xHX/azwr1VVmuKn/NTa7XVlW9p9fSa6aifebDb71PWr/HH3/cQqGQGxyg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QJdAAA4AAAAAAAAAAAAA6BIIwIEO5oILLrA111zT3aZPn17r8XHjxsUfv/322+P362t/v56T7JZbbok/vt5669nHH3/c4uv+xhtv2AknnGBbbLGFrbvuujZmzBg78MAD7b777rOysjJra8XFxTZt2rSE+/w+OOKII1plmdXV1fbLL78k3Kdl+eW2FB0b/jV1zCC14O9F8Lb++uvbzjvvbJdeeqlNmjSp3p9L9fvUGD///HOjnp/qGG3o70JLKSwstLlz58a/5zgDAAAAAKBGLBazDTbYwG688cb2XpUVzpIlS2yttdayBx98sL1XBQDQSRCAAyuAhx9+2O666y73dUZGhgv3FFK3pGuvvdZOPfVUe++991yIVllZ6QLo7777zp0YHHbYYVZSUmJtQct+9NFHXcD5+eefW1v54IMP7A9/+AMfxjuB0tJSmzp1qv33v/+1/fff3z766KMWX8a3337rjvtrrrnGOsP++Oc//2k77bST/f777+29OgAAAACALkTXhq688krbc8893YD07bbbzv785z+nHJBeV/j597//3Y477jjbZJNN3CDtp59+ut6ikeTbN998U2chw2abbWb33ntvg+uhQeK6trXGGmtYe++j8vJyd71tq622slGjRrkClORrG+nut+SB96luc+bMadJ2TZ482f7yl7/Yjjvu6ApytK9PP/30lMUCGmDwj3/8w7744otaj/3222/u8REjRjRpPQAAK55oe68AgNb1/PPP21//+lf3dSQSsZtuusl9iG5JP/30kwvZRR/STzvtNBs+fLgVFBTYbbfdZp999pn98MMP9tBDD9nJJ59sre2FF15wJw1tacaMGfanP/3Jfa3q9yDtA52YoH3deuutbqR2RUWFzZ8/33Us0GAFnbyeddZZ9tJLL1nfvn3dc4855hh38ii9e/du0vIOOugg969OMhtDg0gkMzPT2sr999+f0FHCGzRoUHx9cnJy2mx9AAAAAKCpg3sVIA4bNix+ncKHi7omoWBN54M9evSwIUOGuEHsf/zjHy0rK8s6GnUF0/WUgw8+uEWucSgcPvLII93XH374ofXr18/aijoDfvXVV7bbbru5MFWdx1S4oAHpTzzxRIOB8oIFC+yOO+6wwYMHu5/Xfmlo3ylsDdJ1qlR0bOj107lWNmHCBPdvS3b4a+o+UmD92muvufd05ZVXtmee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AAAAALqEFaoFOgAAAABzLfgrKiraezUAoFVkZGRYRFP8AAAAAABWSATgALCiWftss+oKs3BGzfdnn22mECRj2fcAgC6tuLjYpk+f7uaiB4CuKBQK2dChQy0/P7+9VwUAAAAA0A4IwAFgRdNzvcTv10v6HgDQpSu/FX7n5uZav379XEgEAF2JBvfMnTvX/a1bffXVqQQHAAAAgBUQATgAAACwglDbc4VDCr9zcnLae3UAoFXob9zkyZPd3zwCcAAAAABY8YTbewUAAAAAtC0qvwF0ZfyNAwAAAIAVGxXgALCiWfj98jnA1Q79+++XzwFOO3QAAAAAAAAAANCJUQEOACua8TeZfXd5zb9y001ml19e8y8AAB3E+++/b0cddZRtuummtsEGG9j+++9vzz//fJuug5Y7c+bMRv2M5h1ec801W2T5S5cutSOOOML9q1bOV199tW255ZZun5x77rlWVFTknlddXW3XXHONu3/zzTe3e+65p9ZrLVy40HbYYQe3fsHtC97WWWcdO/bYY91j119/vb333nvW1mbPnm3HH3+8bbTRRrb11lvbXXfdldb6Ll682E4//XTbZJNN3M+l2gfaj7vuuqs9/fTTaa/P77//bmeddZbb7+uvv77ttNNOdtttt7n3Ix3z589326P13WWXXdxxXRcd41qG375TTjkl/tgtt9wSf+/PO+88Ky0tTXsbAAAAAABY0VABDgAAAKzAYtXVFlu8uNWXE+re3ULh9MbfKui+6qqr7OKLL7Y99tjD3ffVV1+54C8jI8N23313awtff/21tac777zT9txzT8vOznZB8E8//WQvvPCCZWZm2vnnn2833HCD20+PPPKIffvtt/baa6/ZokWL7JhjjrERI0a4wFsmTpxoZ555ps2YMaPO7dNjBx98sAt75cQTT3ThuwJ1La+tXHDBBS7Y1rbPmzfPDjzwQBs9erRbj/rW9x//+Ifl5eXZhx9+aHPmzHGPKUxWIO7ddNNNNnXq1EaF31r+4Ycfbpdffrl169bN3feXv/zFrr32WndfQy699FIbNmyY3XHHHfbpp5/a2Wefba+88or17ds34XlVVVU2YcIE++CDD6xHjx4Jj7355pv29ttv24svvuiO/5NPPtnuv/9+O/XUU9PeFgAAAAAAViQE4AAAAMAKaun7H1jxnXda9cKFrb6scM+eln/SSZa9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AAAAAAA6sXYNwEtKSuzJJ5+0iy++2NZdd13beeed7U9/+pM9+uijtZ770Ucf2YgRI2zfffe14cOH21lnnWVz5861CRMmtMu6AwAAAAAAAAAAAAA6lnYNwH/++WerrKx0Lc29MWPG2LfffmvV1dUJz+3Zs6cLu7/88kv32NNPP235+fkuDAcAAACAdMViMZs5c2Z7rwYAAAAAAAC6WgCuCu5evXpZZmZm/L6+ffu6ecEXLlyY8Nw99tjDtttuOzvssMNs5MiRrnX63//+d+vRo0c7rDkAAACA1jB9+nRbc801bb/99qv1mAbB6jH92xzXX3+9PfXUU9ZWbr75Znv77bfd12+++abtueeetuGGG9r+++/vBvh67777ru266662/vrr29ixY23+/Pm1Xuvqq6+222+/vcH7NdhYU0i15yCDk08+OeG9qqiocOu55ZZb2qabbmrnnnuuFRUVuceKi4vdNFcaHO1vDz74oHts6dKlbls22mgj23bbbe2ZZ55Jez0KCgrskksusW222cbtV/281kHLS0djln366afbqFGj4uuv99e755573M9ru6+66iorLy9PexsAAAAAAEDjRK0daf7uYPgt/vvkCwILFixwgflll11mo0ePtscff9wuvPBCdwGiT58+KV9frxF8HX+RQxdjdAPQufnf5bb6fW7r5bXJ+iT/bD2v1dLbP/v7T+z3d5626ooyy+kzwPL6DLLuOb0t++UPrOrX3yzcp7dV9e1rRauvbjl772XRIUOsvbXlMbCiH99dfR90xP2NlsF72nJUoT1lyhRbaaWV4ve9/PLLlpub2+zX1mDbvLw8awu+i5WmcJo2bZqdf/75duedd7pA9cUXX3Qh8VtvveXOjc455xy74447XFCrkPTyyy+Ph9oaJPy3v/3NHnnkETv11FPjr1/X/WuttZb798MPP7StttrK2tLixYvdeZu2a6eddorff//999tPP/1kL7zwgjvv077QwGZt6y+//GKrr766Pf/88ykHEGj/fPDBB25/atosheV+G+uiAQQHHHCA234NeNBgaw2w0P7S+6FQuiGNWbYGHfznP/+xddZZJ+F+be+//vUve+CBB2zIkCEuUL/xxhvdVGAAAAAAAKCLBeBZWVm1gm7/fXZ2dsL9ukixxhpr2OGHH+6+10WS3Xff3V3IOOGEE1K+/t13323/+Mc/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TWt5CjhF4axu6lI1cuRIF34mU9XwokWLXAitltsKftXWXOG5bp5aZ/vQW6+jjlf6XkF5c2h7xo8f7wYSNIXmEN96661dcKzBBs2lAFj7S/vY037V/O5XX3212896L9X+Xi3ifQB+1lln2VVXXeV+TgOoNeBBHcFEc2urgluhdjJ1A1BV/j//+U874ogj3PutAQVbbrmlPfPMM/EBEfVJd9k6pqZOnWrHHnusq5YfM2aMC7pFHc00z7xeQ9umQd2+9T0AAAAAAGh5oViqifC6KFV56ELEl19+6dqtA+jc9OdLF5VVvaML3V1teR1tfZqyPFV/v3/9SfFAW/qtvZGtOrnCyj/5JH5fKC/fet95h0X69bPxLzxgUz9+2fSfU1VllWVkZtqWx/zFlpxxnu6I/0zOvvtatxNPsK66zzvD+9vauvI+6Ij7GyvG503NX+xbOPv5jdG6FHRvuOGG7VLxq1bbCmfTqZZOtsMOO7jwf9NNN7WOTAMczjvvPLv55pvbe1XQgfC3DgAAAABWbImTwQEA0IKmffp6QvgdikRtrc33tfJPP014Xt7hh7rwW1bZdl8LRzPij1VXV9mUHz+0nJ13SviZpS+/YtULFrT6NgAA0BzHH3+8PfVUYteTtqK22yeeeKJ1ZW+++aar7gcAAAAAAPAIwAFgRfPtxWafn1zzr1x8sdnJJ9f824KqKstt2rjXEu4bNHprq3rrveXzeSsUz8mx7MA8qNnde9uQjZa3RpXpn79p4T12NotE4vfFysus5KmnW3SdAQBoaauttpprZ66gti1pTm212958882tK9ttt91cm3YAAAAAAACPOcABoItSi+X5UxZaRWmF5fbOtbzeORbJiJiVzDArKzSrLKl54owZZoWFZiXLvm8hs775sNbc38M33N6WnnupLc3KsulDh1pVNGLd117HyubPt16xmJuXU1bdbj8XeqsFutuWqkqbNfV767/jjrb09dfjr1f62uuWd9SRFspYXjEOAEBHc+6557b5MjX/uOYUb6q33367RdcHAAAAAACgrRCAA0AXVLp4qX35n+9tzs9z4/dpmuEeg7vbVqPLLSva+uH7lA9fTLiv92ojLePbX2xqt27265prWJWquUMhm9uzh0387DP3nFGjRtmIESMsu0cfG7zhdjblk+UV5LO+ft9WOuTChAA8Vlxk5Z9/YVlbdO3qNgAAAAAAAAAAkB5aoANAFzPzxzn21o0fJoTfoq7jC2cstoJf51lleU1ldWuZP/EHK54zNeG+IZvubl98/bWNX2ftmvBbobwqvgPV299//73NnDmz5vkb7ZDw8yWFs624qtgyRo5MuH/pW2+14pYAAAAAAAAAAIDOhAAcALqQiR9OsU/u/9LKlpTX+ZyqympbMG2hVVdVt9p6zPr2g4Tvc/oMsomTC2x2fk2Lcy/cs1etyvEvvvjCFi1aZD2GjrCc3gMSX/fr9y17h+0T7isb95lVFxW1+DYAAAAAAAAAAIDOhwAcALqIwskL7Ltnf6p1fzhS+099ZVmVzZ0432LVsRZfj1h1tc39+cuE+yJrbmlzZs1OfGJmpg1Yabj16dMncd0qK+2TTz6xsrIy67feFgmPzfruI8vYfHMLZWQuv7Oq0sreTwzcAQAAAAAAAADAiokAHAC6gPKSCvvs399YdVKgPXi9AbbHFTvYXlftZD0Gd0t4rHTRUhv/xoQWX5eF036z8uJFy9ctI99mLw1b9ZLi+H2Rqipbv0cP22qrrWybbbax4cOHJ7xGSUmJa4feb2Ti3N6VpcVWOONXy9x0k4T7aYMOAAAAAAAAAACEABwAOjm1Df/qv99byfzShPvX3GFV2+zoDS0rL9PdNj92jGXlByqnzey3d363qoqWnQ+84KfP4l9XhyJWNHA9M7VbL1/eln3k9z/YKlvUVHeHQiHbYIMNrHfv3gmvM336dKuIZFuvlddOuH/m1+9Z9o6J84NXjB9vVTNnteh2AAAAAAAAAACAzocAHAA6uamfz7AZ3yW2F++7am9bZ/c1XLjs5fXOdYF48L7K8ipbNKtl588u+HF5AF7UfZiFcntYbMmS+H0rTZlifcJhi66xRvy+SCRim222mWVkZCS81sSJE23w+tsk3Dd3/BcWWmctC3fvkXD/0rffbtHtAAC0Dw2AWnPNNW2//far9djTTz/tHtO/csEFF9jIkSPdQCp/O/DAA91UGjJu3Dhba6214o+tv/76tu+++9pLL73UYuv77bff2tixY93/Y3r9PfbYwx5++GE3QE2ef/55+9Of/tTg69x111122WWX1fn4+++/b0cddZRtuummblv2339/99ptScudOXNmk97PlrB06VI74ogj3L8VFRV29dVX25Zbbun2ybnnnmtFRTWfaaqrq+2aa65x92+++eZ2zz331HqthQsX2g477ODWr6H7r7/+envvvfesrc2ePduOP/5422ijjWzrrbd2x0g6j2n/nH322e6xbbfd1p555pn4Y1VVVXbDDTe441X7R/tJ+ysdBQUFdskll7juPTrW9dp6D4qLl3f5qU9965Xs9NNPt1GjRsV/d3W8e48++qj7+Y033thOOukkKywsTGv5AAAAAIAVBwE4AHRiank+/vXENuaZuRm2yf+tn3LubwXjeX1yE+4rLlhiVRXpXfhsSHHBDCsprKnErgpHrTS3v0Wz8yxWXBOA91i0yFaeNNmyNt3UQuHE9cvOzrbVV1894b65c+da1rB1LBxdHozHqqus8PcfLGvbxGC87LPPW2QbAGBFE6uudlNXtPZNy2kMBa1TpkxJuO/ll1+23NzE/8dOPPFE+/rrr93tq6++cgH3ySefbAsWLHCPDx48OP74l19+aaeddpoL8d588816l3/77be7W30+++wzO/roo12Y+Pbbb9sXX3zhwtL//e9/dv/997vn7LPPPnbfffc1uL0K0a+88sqUjynoVnCoQQEffPCBC/bPO+88+9vf/mavvPKKtRXtQ+3P9nLnnXfannvu6T4zaP/+9NNP9sILL9hbb73lpk9RsCuPPPKIG5jw2muv2X/+8x930/sTHGB35JFH2owZMxJev677dYxpX5cHutm0BQ3w0GejTz/91J588kkX/PrBHfU9dvPNN1tpaak7Vv7xj3/YddddZz///LN77IEHHrDPP//c/S7p2NHPP/vssw2uy/z58+2AAw5wAfpTTz3ljoV///vf7rPaWWedldb21LdeyXS/3jf/u+sHvYwfP94dB48//rh99NFHlpeX594bAAAAAACCognfAQA6lTk/zrWSBYmtz8ccMspyembX+TP5Gx5j3zz5pVVW1YTKU9fY2qpW72mrbL+8Irsl2p+X5A00i2ZYJByxyqVLLRSL2do/jTfVn2dunji3tzdixAibMGFCwgXm3yZNtj4jRtncn7+M3zfvt2+sz5ZbW+kLL8Tvq5zwm1UvXGjhnj2bvR0AsKKY/d3HNv6F+11A3doy83vY2nsfZwNH1UyB0ZCddtrJXn31VRc+igLtSZMm2brrrlvnz6jLiUJiBcnJlb2+48iOO+7oKmf/+c9/umU0h6pfjzvuOBeCe+utt54L9r7//nv3vYI7Vboq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wQYbxG8HHnigffLJJ+7xcePG2VprrRV/bP3117d9993XXnrppRZb32+//dbGjh1rm222mXv9PfbYwx5++GEXKsvzzz9vf/rTnxp8nbvuussuu+yyZu2Pprr++uvtqcAgstZ2880329tvv+2+fvPNN23PPfe0DTfc0Pbff3/78ssv48979913bdddd3X7Vft4/vzEz0Jy9dVX2+23397g/T///LOdffbZ1tZ0HGg9ttpqK7eNJ510ks2dO7fBx0Tv63bbbeeO3fPOO8+WLl0af+zDDz90x5oeO/zww21K0uDD+tbnkUcesT/84Q82ZswYdzvuuOPsu+++S3ub6luvoHfeecfWXXfdhN9Pvxz9+8c//tFt92GHHWa//vpr2ssHAAAAAKAhBOAA0AnMn7LAVWMH9VutiQF4HTJzM6zPKr0S7pszfvlF2LoC8PKs5UF0JCPbImVl1q2oaPl9Q4ZYuMfy5zSFwu9+/folBuCBtuuLpk+0WH6uRYYOS/g52qADQOc1c+bMWqHeyy+/bLm5NYOuvBNPPNG+/vprd/vqq69cwH3yySfbggUL3OOqavaPK1w97bTT7JJLLnHBa30UTKYKVoM+++wzO/roo134rUD3iy++cGHy//73P7v//vvdc/bZZx+77777GtxeBbxXXnlls/dHUyxcuNDayoQJE9z7sMMOO9i0adPs/PPPt8svv9ztO+1LvXfFxcUuCD7nnHPcPtFABg2G0/O8srIyu+aaa1yYG1TX/RoI4YPjtqQBEK+88oo988wzbjt69+5tN9xwQ4OPjR8/3n1999132wcffODeo1tvvdU9NmPGDDvzzDPt4osvdvtyo402csd0OjTI4tFHH7VLL73U7XMNMth9993t2GOPdYMtGlLfeiXToINDDz00/vun26hRo6yoqMj93u69995uuw866CA3SKSkpKQRexYAAAAAgLoRgANAJzD318RK7J5DultWfmaLL2fg2stDZpk1viBewZassqzUiudMi7c/l2hWtvUsKrJw4Gcy1lyzZdYtOA94lirAe5pfSqyq0hZNm2CZI9dN+JmKH39qkWUDQFemv/MKDVv7Vtf/J3XZaaed7NVXX41/r0B70qRJrqK0LqFQyFVKK0hLFeZpQNWOO+5oxx9/vP3zn/+05lKVsapnFdwqiI5Go7beeuvZddddZ/n5+fFq2SOOOMJ9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Bx980K1r0Omnn26jRo2Kr/f++++f8Pgf//hHmz9/fr3b31Juvvlme/vtt93Xb775pgv8N9xwQ7dOX375Zfx57777ru266662/vrr29ixY1Oun/bN7bffHv/+sssuS3h/tM1rrrmmzZkzx37++Wc7++yzW3RbAAAAAAAA6kMADgAdzNKiMiueV9IhAvCcHtnuJrFYzKqjS6w6FIk/HsnMtO4za9qQt2X7c8nKyrLc3JrAO5yR6f6tyKyZB7x0QYFVlS+16CorJ/xM5ZQpbbJuAICWdeKJJ9rXX3/tbgqq9913Xzv55JNtwYLEAWON8emnn9oBBxxggwYNsn79+tnFF19sK69c8/+GgvCffvrJXnjhBXvrrbespKTEbrjhhjorye+5556Ujyv8/c9//hNfd4X13ty5cy0cDlvv3r2ttU2YMMGF3ArWp02b5irdL7/8cvviiy9c+K99WVxc7NbpnHPOsSuvvNIF8H379nXP88rKyuyaa65xgweC9Hy/jbptu+22dtxxx9mAAQNsrbXWcs/58MMPW307AQAAAAAAhAAcADqYBdMWJXwfzYpYj0GJlcxtSfOAO9WLrTon26x6+WO5+d0t2g7zf3s+NIhEFYCHrCJQna4q8OiyIMOrmkwADgCdXSgUsv3228+F0pq/uz4KeFWRnEqfPn1cCF5dXfMf25gxY2y33XZzX5eWltpJJ53k/p/Jz893Qfk333yT8nUUJitcVlV60JIlS2zmzJk2YkTqaUHef/9923rrrd3Xeu199tnHrauqqRWqe++9956rFN94441dNbratosqsE877bT487TOquhW1XWy++67zw0akFmzZtlBBx1km2yyiQvgtVyZPHmyvfHGG24/aDkaaKbKbVWNKxyXY4891lXC77LLLnXuc7WU//333+3MM8+M36f9d/fdd9f5MwAAAAAAAC2JABwAOpiF0xMD8J6Du1sorJmt24efBzxWMceqc7u7SnAJhSPWp19/q5iQGIBn1HGhv1XnAQ+FLBzNsPLMpAB8pZUSnk8LdADo/BT0PvTQQy6cXq2BQVcbbbSRq0hORa3Pp0yZ4tqUv/766wkBt8JbH077tuBrrLFGytc577zzXLirKvKgX3/91XUqOf74422zzTZzldYTA4PGFGxvs802tnTpUjvllFPs8MMPt88++8yGDh1qs2fPjofoWhct4/PPP7cHHnjAbbsC5j322MM++OADtz/8Oq677rqu6jqovLzcXn31Vdtxxx3d9wq+Fdp72m69hqrf9bqrrrpqwnQjGgCg/SS33HKLXXfddZaXV9NxJVllZaUL6JPnUtcyVQ2vAQEAAAAAAACtLdrqSwAANKsC3AfQ7V0BHquca9W53eIBuJv/OxKxWHHinKjREW1XAR6cBzyckWGVFbkWs5CFLOYC8P4rb5zw/Mpp0y1WWWmhKP/9AUCCZ5+tuTVEgfOllybed9VVZkndQFJSBfKyKuTGUovxhx9+2H2tqmXNL33HHXfEp8JoClWAP/PMM/boo4/aiy++aMccc4xdeOGFrjo6SI8rQH7yySdTvk7//v1T3q9QefTo0S4MHjZsmAvJ1Wpcy1IVuwLh9dZbz7UaV7X1wQcf7H5OrcMVdEt2drY999xz7ufV7l2BuLZ53rx5LlQePny4qyTXnN1aR4Xiyb7//ns3WCBVq3UF26oi//Of/+yCbq1zt26JXWdycnLiIXtd2+q98sorbnCagv2gaDTqWqGrUn7w4MH1vgYAAAAAAEBzkQAAQAezcMbihO97DukYAXi1C8BrKqqVgWve7W5FieF3KC/fwkmVZ626br16uRBBoXwkmmWVoSVWkZFnmRXFVjR7ikW3PSDxB6oqrWrGjFqV4QCwwispMSssbPh5ffvWvm/RovR+VstoohNOOCGh3XdLiUQiLkxX+KvgV/NbBwNwtRl/7LHHXAvxlRr5f8cWW2zhbp7WXyG+qsDVRnzUqFEuzFeYHQyWtU4DBw6Mf/3aa6+5n1MQrcBc/+f5wWgKvFW9rsBZc2wH5+v21BI9uTpdvvvuOze3+mGHHeZCd9EyVJEepPC7rorvZArr1a49Fa1DqvbsAAAAAAAALY0AHAA6kKWLy6x0YeKF555+Du52kpmbafl9c62waInFwhF3X6w65irA8woKrDLw3OgqK7tAuq2ookyhhYIEBfJSkVkTgKsCPNytm4X79rXqefPiP1M5ZQoBOAAkUyV1nz4NP69Hj9T3pfOzzajWbg2quFYA7MNdVVP7ua4VMF9yySVuDvH//Oc/jQ6/5Z133nHzlO+5557ue83rrZuqvVUF7quk+/bt6+bl1jL9oC6F4vLVV1/Zgw8+aP/73/9s0KBB7jFVfnsKwPfff3/XTn399ddPWeWtkN3Pc+6pdfoZZ5xhF1xwQcLc5aussooL0r358+e7faJ905CysjI3p/q1116b8nFtu9YFAAAAAACgtRGAA0AHsiBp/u9oVsS69Uuv6qo1dR+cbQWzAxetY2a5eXkW/e33xAA8jQvkrVEFrgA84gPwDM0DPsfKixda+ZLFLuwuDwTgVZOnmCV2ZgUANKM9ea2W6O1A81z7ebM9BcsaKFWXtdde2+69915X/ayfV9vxrbbayj2mduWaj/uJJ55IGSqno6KiwlWUq/W3Wphr/mzNI+5D5mOPPdY9b8yYMS74VpW35gFXxfncuXPdY+7/t0jEheZaR7WCX7x4sZtrWxRMK5xXO/ijjjoq5XqomtwH6jJ58mQ377nm8lbr9KCddtrJredHH33k5k/X19tvv31aFeBq6a4q77rapGsdfGU7AAAAAABAa2IIPgB0IAuTAnC1Pw+FW7iiuv82ZoN2rvlXVIG28841/9Yht1uJVed2j3+vCrQ+Awa6auqgSDtUVvt5wMPRDLNQyFWAe6oCT672Tl5nAEDn980339i2226bcNP81qrg3mCDDVL+zDnnnOOqqvWvwuBFixbZpcvCfFVdqyp7xx13dD+vm6/kfv755+Nf12eXXXZxIbdum266qf3222922223uaBegbYP1jMzM+2uu+5yr7vxxhu7bVFbdtl6661tyy23tJ133tm22247t02bbbaZa6PuaV0mTZrklpfKOuus47bNh+AK9dXWXNXfftt0074aMGCAC70V3G+++eauZfmVV16Z1nswY8aMlK3WffX3+PHjE6rXAQAAAAAAWkso5ieQWwGofZ8qLL788kvXMhdA56Y/X7qg26NHjzZpu90Wy/v4/i9s1o8F8e9X33ZlG/WHddptfbyfXnzOxn31qVXl1bS+DYWitvkuu1u/iy62WEV5/Hk9r/urZY4e3SLLTHf71J713XffdV8XF0y36ooyGzDrcwvHqm3tfY6zfkVRK7rllvjzI0OGWJ/77m3VdWoJXfH4bqyuvA864v7GivF5U/M7KyxVFXJ2dnZ7r06HMG7cOBfeqpV4Z/Tyyy+78Fwhel0Udm+44YYJ85u3JVW8ax71hx56qF2WjxUPf+sAAAAAYMVGBTgAdCALZyyuVQHeEVRXzrPqnG6Be6IWKSxJCL/dve1QAR4MEH0b9MpozTyzRbOnWnTlxHWqmjnTYksT51kHAKy4VJ3dGcNvzS+utuP/+te/bL/99qv3uccff7w99dRT1l7++9//uvnWAQAAAAAA2gIBOAB0EEsXl1npwsRgtuewjhGALyqcYxaJLL8jFLHqyfMTnhPu0dPCPXu2+bppblQ/N2k4uiwAz8hx/xbPmVozL3mwwjYWs8pp09p8PQEAaEnqgHLooYe6Obfran/urbbaam5O7zfffNPa2k8//eT+r1ZLdQAAAAAAgLYQbZOlAAAatCBp/u9oVtS69Vs+n3V7WrBggVmkr9mySTNClRErnlRofQLPiShobieqAlfbYV8BXpGh/TbXzQFuWVkWGTTIVX57lZOnWMbqq7fb+gIA0FxDhw61r7/+Ou3nn3vuudYeNAe55hUHAAAAAABoKwTgANBBLEwKwHsO6W6hcCvMDfzZWLPy+WaZvc02ucts7FiVkZn17m2WYv7QitIlVlJRbaFoyGLLEvBoRZYtnpnYrj251XhbB+CavzWc1AK9cmmJlS2e71qzBwPwqilT2m1dAQAAAAAAAABA66EFOgB0EAumJQbgvYZ1b50FVS01qyyt+Vc0H3Zpac2/KRQXTLeKzLxAF/GQRcrzrWhhZcLzXKvxdtK9e82+CkeiZqGwVWTk+mJ1Nw94JGlu8koCcAAAAAAAAAAAuiQCcADoIBbOSKyo7jmkY8z/XTR7ilWqpbhPwEMRi1RkWtnSaiu3mopriazUvi3Q4+uRkWmxcMSqw5nL5wFPqk6vnDy5zdcRAAAAAAAAAAC0PgJwAOgAyorLrXRhYgV2z2EdIwAvnDXdYqHw8vzbohYpjpnFYlYc6hZ/ntqMt5fc3FyLRmtm9QhH/TzgOe7fJQXTa1WnV8+bZ9WqegcAAAAAAAAAAF0KATgAdACLZxclfB+Jhi2/b8081u1twdw58a9DoZCFqsMWKq1pf+4D8HDPnhZe1oa8PWi94m3QMzLcv5UZNfuveO5MiwwZYhZO/C+vatq0dlhTAAAAAAAAAADQmgjAAaADWDQrMQDvNiDfwpGO8Sd68eJAa/aQWbg8YrHycvftkmUBeHtWfye3QY8sqwCvjObGK8AtI8MiAwcmPL9qKgE4AMBs+vTpNn78+PZeDQAAAAAAALSQmn6xAIB2tTgpAO8+aHlr8fZUUVJsS6sSK60jFTnxALzYatYz0oEC8HCGb4FeE4BXLl1i5cULLTJsmFXNnBl/fiUV4ACwQquqqrK//e1v9tJLL1lFRYXtueeedv7551vGsk4iAAAAAAAA6Jw6RnkhAKzgFs8uTvi+x8COEYAXzZkabyXuKACv7GZW5ivA8y2mWcE7QAAeb4EeiZqFwlYZzXHrJsUFMyw6bFjC86umTm2X9QQANGyHHXawcePGua8vuOACGzlypG2wwQbx24EHHmiffPKJe/zpp5+2I444otHLeOSRR9wyzjrrLDv66KPtq6++svvvvz/hOeXl5fbHP/4xvi6pvPfeey4833DDDe3444+32bNnxx979913bdddd7X111/fxo4da/Pnz0/42dNOO81++OGHWq+p7dF2taQnnnjCbbN88cUXdsABB7h13mOPPezNN9+MP+/bb7+1fffd163zYYcdZlNT/H/54IMPuvelofvnzp1rxxxzjFVXV7fotgAAAAAAAHToALysrMwuuugi22ijjWyrrbayBx54IOXzdBFozTXXrHW78MIL23ydAaAlxWKxWi3QO0oFeNHsaVYZzY5/H4lmWKQiw2IVNQG4AuYSy7XI8OHWUQJwCUczXFjv111t0FUBHkQFOAB0HieeeKJ9/fXX7qagWgHtySefbAsWLGjya3766acuBB40aJD169fPLr74Ylt55ZXjj8+ZM8f+9Kc/2ffff1/na0ybNs3+/Oc/2+mnn+5CcgXKJ510kvu/XeHvOeecY1deeaV7rG/fvnb55ZfHf1ZV57/++qutu+661toUvP/73/+2Qw45xJYsWWKnnHKKHXfccS4Iv/TSS+28885z26JzMz2m7f7ss89siy22sDPOOCOhav6ee+6xG264IeH167pf+3XUqFH25JNPtvo2AgAAAAAAdJgAXBdJVPXw8MMPuwtC//jHP+zVV1+t9bzbb7/dPvzww/jtjjvucO0JVZUAAJ1ZyfxSqyyrTLivRwcJwOfNnp7wfTgzw3LDUaX28fuKQ90sulL7B+CZmZmWm5sbD+qlMiPP/VtcMN2iw5MqwGfNslhFRTusKQCgOTQdx3777WclJSVu/u76KOBVxXgqffr0cSG4r04eM2aM7bbbbu7roqIit4ytt97aBg8eXOfrv//+++71VeWtcxMF9ZMnT7ZffvnF3njjDfeam266qWVlZdnZZ59tb7/9thUX13R9+fLLL93PansmTZrkwml9f+qpp7pt87777jv7v//7P9tss83c62kA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nlQNDQ2Q0Ezix+v1oTkSQby5GXGPN7ndoUAQEds2r+j+jrlj7T5zy+ZUIKsw0OnPb3lJGw61bbqG+KKvoxa4UbNwLrL7bWDZbmPefFWdRCZvdeU2Of313Z168z5w4v6mzpGYcElEREREREREREQZGAAvLS1FTU2NCkC43e5kWXQJfufk5FjWLS4uxhprrGFZNmjQICxYsGCx9z9mzBiMHj3ackJSeobn5uYiOzu7058PEaUny07e090VHFva4xktBmJNMTVpJ6FktWLk5uakZXtStbS0wDAkvxnJn/zCIniM39AiZcBdruR25w5eE9qi7OgVfbxUgT5+NIdakpf1Zl3dT2c+vxUl3zktbi8MV2swMu4NAOEG5K65JqpTxhGmgRy44AoGu+U158TXd3frzfvAifubOkfq5z8RERERERERERFlWABcMrol8P39999j+PDhapn09d5ggw2gadb25BtvvDGmT59uWfb3339jn332Wez9Szl1e4l1ISeaebKZqHdIvJ+76z29tMcL10Vhr36bXRjssu1bnucv2aam0QKkfLzmFhS26//tysqCnpW10o9n74PeHGrLKA/VRpbpPrpjfKUMepPbk7xsun0ISw/woiKJZAEpWeBmRTlcpaXd9ppz2us7HXrzPnDi/qaVx/EkIiIiIiIiIiJKL2uUuZsFAgHsv//+GD9+PH788Ue89957mDhxourzncgGj0Qi6u/DDz8cM2fOxF133YXZs2fjjjvuwJw5czBy5Mh0PgUiIoumKmv/b2/QA0+gLbiaThIAj8diqIwNQHnLIFS19EMwvxjGgAFoyc9HbFFGtl5S0umPHcy3ljsP2fZTOmVlZUHT2+aDGbofkdoKuDStNQiewiwvT8MWEhERERERERERERFRjwiAi7Fjx2Lo0KEYNWoUrrzySpx55pnYbbfd1HUjRozAG2+8of7u378/Hn74YXz44Ycq61t+P/jgg6qMOhGRU4RqWvtDp2Y+O0VrBngMv0e3xk+RHTGrcRME8ovRsuVWCK2xJsIDB6r1tC4IgNv3Q1O1dT+lk2SApwbAY24fmhvrYLQ0QyuxfscYZQyAExERERERERERERE5WVpLoCeywG+44Qb1YycZ36mGDRuGl156qRu3joho+YRsgV175nM6NdTXIW62lfPWY1H484ph2LKauyQDvMCWAe6wALjLnZoB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TdO9GdQNJ9cExzszcLwzC8c7s3C8MwvHO7NwvGlxGAAnIuqkDPCgraR3OjU21Fsu62YLfH3yESqvQPSvtZPL+2xbChx3XBq2EPAGvfAE3GgJt2Wqh6qdEQD3er2qdI70ATcWZdK39gGvQB9bAJwZ4EREREREREREREREzpH+OrNERD2Q0WIgUhdxZAZ4LBZDNBppl9Hs0rR22cqa9LNOI3sf8CaH9AF3uVxqn2luT3KZofsRqa2AVmwrgV5egbhppmEriYiIiIiIiIiIiIjIjgFwIqIVEK6NpFYYd1QAXHoSmrG2rGqRnZOHeDgMU0qjp9BLS5BO9jLo9qz6dFJ9wPW2QimG29vaA1z6pqcyYjCrq7t/A4mIiIiIiIiIiIiIqB0GwImIVoA9UOsNeOANtmULp1NTU1Nr3+pFNKMFwfwiGBUV7daVftbplGULgDdVOSsA7koNgOt+hGsqgZwcwOO1rGuWt9+3RERERERERERERETU/RgAJyJaAU3V9v7fzsj+TmaApwTAdSOKQF6xKtUtAuv9jayN/kDWJgvgCgSAm28Gxo1r/d3NgvlBx2aAqxLolgxwHyJ1laqUvH3igFG2MA1bSERERERERJQ+8Xgc8+fPT/dmUDeYO3duujeBuhnf35mD729nmzdvXro3ocdiAJyIaAWEqkM9KgDuzy9O9v925zXCXVAPd8miPuE//wx8913r724WLAw4sgd4sgS6pQe4Dy3hRsSiYWi20vGGrbc6ERERERGRU6yzzjrYeOONsckmm6ifzTffHOeddx7q6+s7XH/cuHG4//77u307acWceOKJybEdMmQINthgg+TlV199tUsf+4YbbsCLL77YpY+RKT755BOMGjUKW2yxhRq7Aw88sMvHb1n9+uuvOP7441fotjvttBO+/vrrTt+mTMH3d+/A9zfZj8USP88999wSb/fkk0/irrvu6rbt7G3aUtuIiGiZ2TOV7aW8014CPdaSvKzHJAO8CMbP31nWc/nTv81ZBdYM8EhDFEaLAd2jw3EZ4LoXcbjQXF+N7OJitO1hwKyoTMs2EhERERERLYvXXnsNq666qvq7sbERp512GsaPH49bb7213bpXXXVVGraQVtTDDz+c/PuYY47BAQccoIIr3aG2tlb970wrRwJhV199NS699FLstddeatm3336LCy+8EB6PB3vuuWdat6+hoQGxWFuiBXUfvr97Pr6/qaNjseV5H9KKYwY4EVEnlEAP5KU/mJzQ1FiPeNxMXnZLBnheWwZ4givgR7p1lDkfsu3bdGaAw+WCS9MtQfBofRW0oiLLuh31VyciIiIiInKi7Oxs7L777vjjjz+SGVyXXXaZygyXYMvFF1+czDaqqanB2WefjWHDhmH77bfHM888k7yfxx57DDvvvDO22morXHLJJWoyNjnHjz/+iKOPPhpbbrmlGr+xY8fCMIxkJtoVV1yBzTbbDK+//joWLFigshM33XRTdRsJ1CReAzKul19+ObbZZhvsuOOOyYCcZK1NnToVDzzwACdNrISWlhZcd9116j20//77w+v1qh8ZtwkTJsDlci3x/SbjJGMrwVHJJjz88MPx33//Je9/cbeT9/m5556LESNG4NRTT1WvDcn43W233VSWogTlJLNTqgyedNJJqhT28OHD1W2rqqrU54Jks8r6r7zySvLxvv/+e+y3335qW6SaROI1R52L7++ege9vWha///67qu7w008/qctyrCXHaR9//LF6D8p78ZRTTlFjNnLkSBx11FFqfKR0/Zw5c3DCCSeo9/u+++6LTz/9NHm/66yzjroveX/La07G8rbbblPryrHf9OnTe/0xHQPgRES9LAO80VbGTpVAzytsV6bb5U9/ANzjc8OX5V3i5IJ0kQNSmYnpsmSB+xCtq4ZeYu0BbjIATkREREREPaiXpJxMlYB3gpRD/+yzz9TJ9VQSRHG73eqE6qOPPoo77rgDv/zyi7r9pEmT1LL33ntPnSi98cYb0/BsaHH+97//4eCDD8ZXX32lTnp/+OGH+OKLL5LX+3w+fP755+okuJTElxPlsu7pp5+OKVOmJNeTIE11dTXefvttVYpVSiK/8cYbOOyww9TJ9jFjxqhACK2Y7777Tr1/9t5773bXbb311thjjz2W+n6T8Tj//PPV+Obm5uKhhx5Sy5d2ux9++EFlJN50001qzCW4MnnyZMyYMUO9LqRChCQHyP2tssoq+Oabb9TtLrjgAhQUFKjPhTvvvBM333yzuq9IJKJePxKcmTZtmsp0XLhwYbfsx0zD93fPwPc3LYt1111XtTuQYy4JaMvYXH/99WriobwH5b2YaE0jwfLjjjsO77//Pvr27auul2C4vD5kcou832VCQ+pkmQ8//FC9hiSwLcd0su4+++yj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mDRJaqdLtBc44ojlerzOUF/WiHdv+MSybOSE3aF7tG4d345In5733n0HjQtnJ5cV/fcldhn3CCK33Inmr79OLs868khkHXN0j399p3N/Z9I+cOL+ps7B400iot7fczPxOS/Z1E4nvfu23nprfPHFF5YyhjfccIM6oSkn2a699lr8+OOP6oToqaeemiyjKic133///WSvQjkJJyfR+/fvj8MPP1w9/6+++koF1qVHtJxEl5N3cj8XXHCBOnEuWSRyAm3KlCkqGC8ngc8555zkiXene/rpp1XGfE8Zb1o5mTre8r+JvJclOJYotyrv08033xxHLOEcQU+XqeOdqTJ1vPn+zqzxzlQc78zz7TL+T8YS6EREy6nJwRngTY2NyeB3agl0s6wtOzn67yowPLu1Br+FHPCeeOISg99dKZDXvhd52FZmPq0l0FUGeFuA0tS9iNRVQS8psaxrsO8NERERETmMBL3l5JBkdDzwwAP4/vvvVVBaMsHWWGMNnHDCCSrjRwLkkpUkWWDS93FppOSlnGz6+OOPVflFyUiRgLlMyJXSjXL/0hfykUceUfcnfaNfffVV/PDDD3j00Ue75bkT0bKRCbmS6S8TVcTPP/+Mzz77TAXMiKhn4/ubiDIZA+BERMvJXqLb3sM6nRrr6yyXpQS6X3qA23qyaCXOKXXo8bnhDVozQEK1zgiAS2aK2+2GS9eTywy3D5HaKmhFRZZ1TXufdSIiIiIiB5Ag9IEHHoh3330XRx55pCqzKL39pk+fDtM0ccopp6gSihtuuKEqiZk4Sb40e+21lyq1KP0C//jjD5VRJvcjAfcnn3xSlcuWcutSdlOywgsKClSGuSwjImeR0qnyvpVSyuedd54qvyqTZIio5+P7m4gyFXuAExEtBzNmIlIfWWIP63SRXj2RiDVw7NVd8PizYNh6gOslpXASyaJvDrU4rg+4zJSVLPA63Q1jUW91FQCvq0SebRKBfZIBEREREZETSJBa+oDLj7TqkKxt6eksx7nSkzK1HYv0gPz111+X6X4T/cMl0zsvL08FvxOkd6BYuHChCoAnyq5KKVa2fyFyno033hgvvfRSujeDiLoA399ElKmYAU5EtBwi9VHE43BkCfRQKIT4oiBtQnafHHWSyawod2wGeEf7MFRrnWTgjDLorUw9kQFu3YdmRaXa10RERERETvH6669j3333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e9OEWVXV/RtIRERERERERERERJSBGAAnIlqWEugOygAPh8OWDHBdZYAXtyt/ruXkwuV3TuB+RfjzbRngNRHEzTgcWQLd7UOopgKu3Fy4vNbtto8NERERERERERERERF1jbYz90RElBSqtQXA851bAr01AC4Z4OXLVv584OGAEQH0RcHxww8HIhHAgcFyew9w0zARqY+2W+6EEuhxl4ZQbY3qxS773pg7N3mdWS5jMzRNW0pERERERERERERElDlWKABeVlaG0tLSzt8aIiIHiMfj7UugOyQArrZNSqDHUgLgMQkIF8H45XvLunrxYgLgq+xhvbyH7bKDeLM80N0ajJiZXCZj44QAuN/vh56SAS6iMQOxSEjt+9QAuGGbnEBERERERERERERERA4qgb7jjjvixBNPxBtvvIHm5ubO3yoiojRqDrUgFjUcGQCPRqMwjBjiccPSA7w1A7xi2TLAexDJpg7Y9n2TQ/qAa5qGYHYfyzLpAx6urYRm6wNuljEATkRERERERERERETk2AD49ddfD9M0cf7552PEiBG48sor8dNPP3X+1hERpYE9+9uluRyRcSzs2d+Ix6GZzfDnFsGoqLSsqxdbg7A9lb3/un180ikrKxsuTbcEwCO1FdBtAXDDNjmBiIiIiIiIiIiIiIgcVAJ95MiR6kdKob/88suYMmUKJk2ahMGDB+PAAw/Efvvth6Kios7fWiKibhCqtgZYAzk+aLqmyo87sf+3LysHusfbvgf44kqgR6uBuCmRfcBXAFRXA6YpKc1AQQGcJsuWAW4fn/T3AffAMFsz8g13awZ4H3sGeDkD4EREREREREREREREjg2AJ0gf8FNOOUX9/PLLL5gwYQJuuukm3Hrrrcky6RtttFHnbS0RUTdwav/vjgLgmhFV2d9x02yfAb64EujfngtEqwBfIbDVY8C55wJVVUBhIfDYY3Aaewl0J2WASwDcJX3AW1ovG7oXkZoKaP03tKwnPcBlAoWUdCciIiKini3a3IwFVVWob2pK96ZQF1tYXY1QJKJ+tzhgQjR1LY53ZuF4ZxaOd2bheGcWjnfmaYpE1P9kXRoAF998843KAH/33XdRX1+PbbbZBjvssAM++ugjHHHEEbjwwgtx3HHHrezDEBF1m3BteIkluNNeAj01AzwWRSCvGGZtHRBbFIVdxN6HuqfKsu3/JsdlgLutPcDrKqFvYt338XAY8cZGuPpYe4YTERERUc9iGAZ++XcuvqtpTPemUDcIR6P4dXYZWqb9CK/Hm+7NoS7G8c4sHO/MwvHOLBzvzMLxzkze/GzsZrRWZe3UAPjs2bNV0PvVV1/FvHnz0L9/fxxzzDGq/Hm/fv3UOkcffbTqEX7fffcxAE5EPYo9wOrkDHAJgPvzitqVP4fuhpaXh97APgEhXBNG3Iyr3uxODICHJANcsukl2ztl1qFRXgGNAXAiIiKiHk3Xday1zlAMyB+IYCCY7s2hLlZeVY645y3ssuPeKJJjfOrVON6ZheOdWTjemYXjnVk43pknFA5hTs1s9b9ZpwfAd999d/h8Puyyyy64+uqrsdVWW3W43hprrIF///13RR6CiCht7CW27SW4HVcCPa9IBVdT6cVFcElP714gmGfd/0bMRLSxGf4cH9ItKysLmpRAXySu6QjVVcHl8agguFnZVpbeLC8D1lwjTVtKRERERJ3F4/GgsLAIOdk56d4U6mIx04DH61UnU0tL+qZ7c6iLcbwzC8c7s3C8MwvHO7NwvDNPfWM9FjbOX+p6KxQAv/zyy7Hffvuhz1Iy2U477TT1Q0TUk4QcmgEuPaRVCfRYagZ4RPUAN/8qs6yrFfeO8udCAt2arsE0zOSypuqQIwLggUAAmu6xLAs3hdUkBb242BIAN8ptWfpERERERERERERERNTpVig98O2330b5Yk7k//7779h3331XdruIiNKiJRpDc8jaSzvLIQHwlpYWxGKxdiXQAyoD3PqZrJcUo7eQUuf2SQj2LP100TQNgawsyzLD7UWkrhpasXUMTFuWPhERERERERERERERdb5lzgD/5ptvVPahmDZtGqZPn47q6up263344YeYM2dO524lEVE3kf7Sdk4pga6yv1Xwu62vtGY0w59XjGiFNbiqFRWhN5E+4I2VTY4LgIvsPjmocGlA3Ez2AY/UVsBbYs3CZwY4EREREREREREREZGDAuCTJ0/GlClT4HK51M+VV17Zbp1EgHyfffbp3K0kIuom9sCqL9sLt1eHM/t/N0PXdXizchCy9wC3BV97umC+f4ll6tMpGAxC090wY83JAHi4tgKBdgFwZoATERERERERERERETkmAH7ZZZfhoIMOUkHuUaNGYdy4cRg8eHC7UrA5OTlYa621umJbiYgytv93RwFw3WiGN6cALk2Dac8At5Xf7umyCoLODoC7UwLgbskAr4RWMsCynllu7dNORERERERERERERERpDID36dMHm2++ufr7iSeewNChQ5Fl63tKRNTbMsAdFwCPpQbAo/DlFiAejcKsq+21PcCFU3uAJwLgLr3t6zQmGeA1FdBXH2ZZz6ytRby5GS6vNw1bSURERERERERERESUGZY5AP7KK69g++23R35+PubPn69+lmT//ffvjO0jIupWTQ4PgLf2AG+lx6Lw9VkFhi37W2hLKoG+0bVA3ABci0q7X3stYBiA7oxS74vrAZ6qqTqsKpJIS450k8lgmu5JXlY9wOsqoZWWtltXxsrdv383byERERERERERERERUeZY5gD4xRdfjOeff14FwOXvJZGABAPgRNQThWsiPagEumSAF8IsK7es58ruAy2whO0O2gKwPSAgaw+AGy0Goo3N8PfxwSk9wBPimo6mmgXQJDM8KwvxpqbkdWZ5eY/Y30REREREREREREREvT4A/v7776N4UU9Z+ZuIKCNKoNsCr+kUDoc7CIAXwZCgagq9dAnZ3z1UIMcPTXPBNOPJZeGasCMC4IFAQPUAT9XU2Kgy1PWSEsT++Se5vKNsfSIiIiIiIiIiIiIiSkMAvH9Kxlrq3wmxWAyNjY3Iy8vrvK0jIupGRsxEpN6ZGeDyGRuNRhGPtSSX6UZzawb4v39Z1pWga2/j0lwI5PlV6fME+Tt/tfR/5+i6jkAwiLY8b6AFGlqa6qHJxLGUALhZzgA4EREREREREREREVFX0lY0EHP33Xdj6tSp6vLXX3+NbbbZBltttRVGjRqFurq6zt5OIqIuF66VvtJwZABc9f+Om+onQVtUAt2wBVW1ktZqHYtV9jGw4J3W3+Ljj4F33mn97WD2bHx7tn46ZefkSpg+ednQvQjXVkC39QG3Z+sTEREREfUkUuWovLIs3ZtBRERERETUORngqe6880488sgjuOSSS9Tla665RmV+n3766Xj00Udxyy234KqrrlqRuyYiSht7QNXjd8Mb9MAxAfBYW/lzzYxBi5vw5RTCrLCVQC+xBl3b+ftRIFoF+AqB0u2BRx8FqqqAwkJg++3hVMGCIIBqRwbAg8EsuHQd8UUl6g3dh3BtJXIWtQ6x9AAnIiIiIuoiCysWYtS5R2HwwMG455oHLNe988lbuOWhm3DeSRdgt+32WKH7f3DS/Qj6gzjmwFGdtMXUXb6Y8TkenfwIKqsq0L/fqjj16NMxdO318fX3X+HBp+9DRXUlNl5vY5x70gXIy7FW2rr3ibvRJ7tPu3Ff3HJyhhffnIx//vsb54+5SF1+48PX8fxrk1DXUI81V1sTZ44+GwP7D1LXnTHuVPw37z+4Fs3r3nT9Ybjif63ndp+bOgkvvfWCSojabbvdcdIRp0DTViiniroYx7x3+/2v33DnY7dj7oK5GDxoMM4/+SKsUrqKZZ1QOISDxoyE1+tNLjv2oONw0J6HoLq2Gnc9djt+/O0H9Tl/3KEnYNvNtlPr/DPnb9z12B3q9dMnOwdHjjwKe+ywV7c/R2rD8c4MDz5zP1597xXomq4uez1eTL7vZUx971X1+d3Q1IC1Vl8bZ40+BwP6DWh3+4rqCtzxyK349a9f4Pf5se8uI3HEfkep6775cTpue/hmxIwYTj7yFOy8za5q+Sdff4w//v4dJx4xBr3dCgXAX3/9dZx77rk46qijMGvWLPz555+YMGEC9t9/fxUIv/HGGxkAJ6IeJ5RSXttJ2d+L7f+dnQfN7UHM3gO8F5ZA72g8Usuhp1swGISme2CkBMAjtZXIs2XjMwOciIiIiLpDWVUZ5pXNQ//SthZ2H3/9EQL+lfsfp6GhXgXAqWdZWL4ANz1wA64852qsv84G+OjLD3DFbZfh3msexA33XaeCXkPWXA/3PHkX7nz0dow7e7y6XXNzMx55/iFMefdlHH3Ascn7W9xycgbDNPDC68/jsckTsfM2u6hlv/zxi7p849ibMaD/apj82nO48vZxmHjTE2r92XP/xTN3PY8+WX3aTZx486M3cNeV98Lj8eDyWy7F1PemYORuB6Tp2VFHOOa9n3zuXnnHFSqINWKzbdUkhevuuRp3X3WfZT0JbA5cdRDuv+6hdvdx0wMTkJOdg6fveFYdI1w84QL0Le6LwQPXwlV3jMf+ux2AWy67HbPnzcZZV5yODdbdEP37rtqNz5ISON6Z4+//ZmHsaZdhm+Ejkst+mvkjnn7lCdx86W1YpbQ/nn7lSRXIvvXyO9rd/uYHb8RaAwfjynOvQXVdNc4efzrWXXMINhm6KR57YSLOOv4clBaW4sLrz1cBcJnY9MIbz+PaCycgE6xQALy8vBwbbbSR+vujjz5SM8C226519kjfvn3R0NDQuVtJRNQN7BnF9pLb6dTU1ATTSOn/HYvCn1eEuGHArKhcvhLovSQAbp+wkPYAuNsNoxmWALi+xpqW9YyKSsRNEy7OnCYiIiKiLrTNsBH49OuPcfh+R6rL9Q11rRlEA9dSl6tqKnHvk3fjh9++R1YgG/vusp/KFnK5XJi3cK667u/ZsxCKhLDx0E1x0SljVdD0gy/fhwsu1DXU4YTDTlJB1db7CGLbzbfHiYefrO7jt79+xQNP36dOqsrJVlk+bIPh6rEff+FRvPnR6+rv9dYaiv+dcJ46QUtdp7yqHHvusBc2HNJ6Lm+nbXbBvU/djfc+e1dlgW80ZGO1/IRDT8ThZx6CpnATsgJZGHvjhehX3A/bDN/Wcn+LW07OcPMDN6Ax1Ig9dtwLLc3Nyff8IXsfikEDVleX99t1f1URQD4bauprkJuT1y4QKj788gPsvdO+KClqrTR32L5H4PnXnmUw1GE45r3fD799p8Zrx612UpePGHkUXn7rRcye928yqz8RTFtjNeu5KBGJhPHdL9/iqdsnwe8PYM2Bg7H9Fjvg/c/ew1qD1sZ91zwAn8+v1m1orIfbratsUkoPjnfm+Pu/v7HGamtYlm2wzoZ49OYn1cRVGcumUNNij5WvPu9alT2u6zrqG+phmqY6hhNuvTWrPI449EXnot/48DU1qaKjz//eaIUC4CUlJZg7dy6GDx+ODz74AEOGDEFBQYG67rvvvlNBcCKinqbJwRngUgLdjFkzwAN5/RGvrgFS+oL35gzwrA56gEsPQjnB5owM8LavVMMtJdAroJXaxiLWArO2Fvqi70wiIiIioq6w3RY74JHnHkoGwD+b/qnKLPnznz/U5StvvwJrDhqMp+94DhVV5bjs5rHI7ZOLXbfdHbc/cis2WX8Yrj7vOhUoueC6c/Hhl++rgMivf/6C0uK+quT15NefUwkRz939Auoa6/C/8Wdgy022wqr9VsUlN1yE0449AzttvQu+/WUGrr5zPO65+n4VoJH7euiGR+Hz+HD1XePx2nuv4sj9j07zHuvdJPCdCH4LmaAQjUYxv2weBvRbLbk8p0+uOmkqy+UE+SVnXI7CvEIVXEu1uOXkDFLSVMbnyZceR1nFQrVsuy2s7c6mff8VCvIK1ZjP+HkGNJeGs8efgQXlC7D+Ouvj9GPPRGF+EebM/y+ZUSwG9B2AufPndPtzoiXjmPd+c+bPwYBV2sofS8CrX+kqark9ICoT2U64YBTC0TC233JHHH/oiTDjcXUOLRH0FJqmY0H5fPW3BEnFoacdhLqGWvU9L68HSg+Od2aoqq1SExDuf/o+/PbnL+hXsgpOOfo0DBm8ngp+f/Xdl7jytnEIBoK46dJbO7wPKZkuzrziNPzx90zsvt0eWHuNddSy4w45QR3XS8XS00adiXAkjHc+fRu3XtY+k7y3WqEUtH322QfXX389TjjhBMyYMQMHHXSQWn7ttdfirrvuwr777tvZ20lE1O0Z4Fmq57QzqAC4rQS6P68Y8coKy3ourw+u3Fz0RvYJCbFoDM2htqz4dMrKkh7gbQFwU3MjVFsJLT8fSFmurmMZdCIiIiLqYhsP3QSV1ZWq5KX46KsPscOWO6q/pfTtX7P/xJgjT4XP68Oq/QbgkL0Pw3ufv6euv2DMRSprsLk5isqaStUbsqa2pt1jSKD0r3//wCdffwSP24PHb31alc+Uk3VSjlOC6ZKNstmGm2OLjbfEx19JCfYgaupq8PbHb6KqthJXnnMNg9/dTF4TMiHh2INGq2wgn89nuV5OlktwXEhArSOLW07OsLTxkb6ydzx6u+oDL6RKmZwsv/SMy/H4rU+prLAJ916nrotEI/B72wIo8nqJNEe6+BnQ8uKY934yLr6UcRHyHR61jY0ENmXC051X3oPbx92Fn3//Cc+++owKoElW6cTnH0a0OYpZs2fh02kfo7llUSnDRSRjWMrfv/z2S6p/MKUHxzszyERTGb/D9jkcT9/5HPbYYU+Mu+VStVxsuv4wvDrxDRywx0G44tbL0BJb/HnwWy69HRNvehw//PYDXv9gqlq28Xqb4LFbnsSTt09S/d+l9Ln0CJ/2w9c4/fJTcPktl6C2rv0xPjI9AP6///0Pxx9/vMq6O++883Dkka0zin/66Se1/NRTT+3s7SQi6v4e4A4qgS4B8LglAN6MQH4R4hXWALhWUuKIjOiuEMjzw6W5ljhpIV0CgYAlA1w01tepUud6sXUGJfuAExEREVFXk0yhbTYboYLT1bXVKsMkkQ1SV1+H3OxcS6lLKXVbWd36v4WU1zz9slMw+oJRqn9sKNykSifa7bHDXthzh73x7NRJOOz0g1Rv2dr6WnX/pYtK56bef0VNBVZbZTVVTv3Lb7/ACRcep06+JbLSqev9Put3nHPlWWrcZJKDnFyXPqOpotHISveKJ+eSCSpjb7wIJx85JpkhLCXxLztznHqfythLe4Mff/9BlcL3+3yItrROiBAyOYKvj56FY947yEQEmZiWSgKbAZ91bGRym4xnVjBbje+h+x6Or779Ql134aljUVFZjqPPPhwPP/uAmqiWKJWc4PV61fHCTlvvjK+//6obnhl1hOOdGVYfsAZuGHuzagkkk0nl+Ewqdfzy5y/J7G5ZfuTIo9EYasK/c/5Z7H3JWEoPd2lr9PV37ceypq4aM36arsb6nsfvVJWeJEAux/G92QoFwCW4MmbMGDz88MM46aSTksufffZZnHvuuWqGLxFRT2IaJsJ1EUcGwA3DQCQSsZZAj0UWZYBXWdbVe2n/b6HpGgK5fkf2AXe73fAHrBUDIs0xGM1RaMXWMuhmuXXSAhERERFRV5Bej59N+wSfTf9EZX0kSAa4lCyXnoIJC8sXIi8nT2WWXHPXVRhz1KmYdNfzuOaC69G3uF+H9//f/P9Uqc0HJzyCx255SvULf+61SSgqKEZZZZll3YUVrfcvgXg5QXvLZbfj+XteUr2nb5/YcUlH6lyS2TX2hgsx+tDjValTIeVV5y6cm1xHertLAGyV0v5p3FLqKm9/8hZuvP96XHzaJeoke4L0gp/x0zfJy/I5IOWxPboHq/ZbDfMWtL1G5iycg1X7tpXlJWfjmPce0q4i9fNavsulXYVUcUn1xIuPJctci5aWFngWlUiWUsvjzr4Sk+97GddfdCPKqspU/+imUCNGnXs06hvrLbfLDmZ3y3Oj9jjemeGXP37G1PdetSxriTWjsanB0mZGytlLfEAmOqSS5adeerIqhd92+xZkZ7Ufy6dffhKH73skGhobVIJZQV4BBq26OuYs+A+92QoFwEVDQwPeffddTJkyBa+88kq7HyKiniRcG0HcjC+x53Q6s78hvVtMWwZ4XhHilZUZ0f97cZMSnBIAF1k5OZbLhi59wCuh2/qAMwOciIiIiLrDhutupLK/p7z7SrL8uSguKMZ6g4fiwUkPqGyiuQvm4MU3n1fryAlQKY/p9wXUSTXJIvrmp+mILapG5fF4VEa4kF7edz56G0LhkOof7tbd6JOVg8032hxzFszBu5+9o07WTf9xGr7+7kuMGL6dylwZd+ulWFi+QJXnlKxCKb1LXUv6g15z15U496TzLUGwrTbdGj/9/oMKhEkm+KPPP6L6uDPbs/f5aeaPuOfxu3DN+derlgSppP/rfU/dg4rqCtUf9KFJD2LE5tupbDL5XHj1vVdUgEXKpD43dZLKHiPn45j3LhuttzFq62vUd6sEuCZNeVr1C16t/0DLerNm/6U+y6WEtkxGe/61Sdh5m13Vdfc8cRdeeeclmKapvpun//A1dhmxqwqqFRUUqR7ysVhMBeU+nf6JmkhH6cHxzgyS3S3Z+T/P/EkdM7/y9kvqWHydNYfgs28+xU+//6jG/9HJj2DNgWuiX0m/donKkkX+1MtPqGN6qeL02nuvYqetd2l3HDhnwRxsuenW6pg92tyM8soyVYVpcRNdewtrvdZl9Omnn+Kss85CONxx4EF2/P7777+y20ZE1G3sgVS3zw1PwAMn9v92mQa0uAF/fjHCFRVILQqu2YKtvU0wL+DIEugiO7sPXJqOuGmoy4bbh0htBQLF1qx8BsCJiIiIqDtomqYCGj/8+j0GDVjdct3Y0y/F3Y/fiaPOPkyVV9xn55HYZ+f91Pkc6RF71R3jEDMMrDFgDVUyc8781uyQEZtth2vvvgp1DfU467izcdsjt+DYc49UJ1clmHrQngerHpVXn3ctHnj6PlVisbiwBBefdqk6cSf22Wk/nHP12SqQvvbq6+CcE89Py/7JJK9/8Jo6OS7ZRKkZRZLhf8npl+P+p+5RPePXX2cDnD/morRuK3WN1pPqzaoKQKqHJkzE/rsfqCbLnDnuVFXuerONNsfZo89R14/YbFuVdXj+teeq3rO7jtgN++3Kc749Ace8d2n9br0Odz56u/pulUzeS88Yp6476eLjccS+R6rS9v874Vzc9Zh8vx+u2qHsvfM+2GfnfdV6/zvhPNz60E14ZspTKuh1+VnjVVUWId/Td068DYeefiCK8otx4SkXtzt2oO7D8c4MUn7+jOPOxs0P3qg+k+VY+arzrlUtgy4cczFuf+QW1DbUYYN1NsBlZ12RbHs68sS91TGc9Hk/7Zgzksf02cE+OPbg0Ri+4WaWx3l08kSMOni0+luqd598xBicMe5UdYwuVQJ6M1dcpvQuJwluy44aO3YsSktL1T9Vdv37O69cUmNjI4YNG4YZM2YgO5slHYh6Ovn4qqurQ25u7kr3vf736zmY8dxPycu5/fpglwu27bLHWx7//PMPpn/1BUKVrSVtPC1NKK2fhZ2veAJlo0+AVrYwuW7O+efDv/NOS77DGecAzTWANx8YdhtwzjlATQ2Qnw/cdttib9bdz7+jx/v1zT/w27t/JdfpN7QEW58wvMu3ZUnblPDzzz/j288+gLmoV5Y/XIVtdtgZRTUmGm6/I7mee401UHDP3Sv1WF0hXa/vTN0HTtzf1Dl4vElE1LvJ9/cbL72JoQM3RE62tQIQ9T7zFs7Di69NxmH7HY7Skr7p3hzqYhzvzMLxziwc78zC8c4sHO/MU99Yj19m/4i9DtxTnVvt1AzwWbNm4d5778Xw4d0XdCAi6kr2TGKn9P/uKANcj0URkP7fUha9wtpPepkywCXonWoJQW/Hl0B3UAZ4IBCApruTAXApgR6REujF61rWM9gDnIiIiIiIiIiIiIjIWT3AV1llFZXdQkTUWzTZSqAH850TAG9qakI8ltr/O4pAfjHidXVAS3Nm9QDPd24APCsrC5q7bV6ZlEAP11a0m5QQb2yAuZgWIkRERERERERERERElIYA+JgxY3DPPfdg7ty5K/nwRETOYA+kZhUE4awM8BZLANyfVwzDlv0NTYNWWIjezJ4B3hKOoTnUtm/SKRgMQtPb+sabmgchyQAvKmq3rllW1s1bR0RERERERERERESUGVaoBPrUqVNRVlaGXXfdFQUFBfD7/ZbrpZfle++911nbSETU5ULVPagEutGMQF4RzPJyy3paYRFcuo7eLJAXgLRLjsetkxe8wbbAczoD4C7d+rXaVFcHl88HLS8PZm1tcrlMXnAPGpSGrSQiIiIiIiIiIiIi6t1WKADet29f9UNE1BuYholwXcSRAXDDMBCJRKwl0GMR+POLYfxlDYDry9L/W/xxD9DSAHj6AGufDtxzD9DQAPTpA5x+OpxMd2vw5/oRro1YAuB5/XOQbm63Gz6/H6lTKZpCIcRNE1pxiSUAbpZZx46IiIiIiIiIiIiIiNIYAL/++us76eGJiNJPgqlxM24rge6MAHh4Ua/o9hngxTDLf16x/t9V04FoFeBbVC59+nSgqgroIeXTpQ+4JQBeHYJTZPfpg7YwN2BoHkQbaqCXFCP25x9ty+3l64mIiIiIiIiIiIiIKH09wBNmzZqFJ554AjfffLMqif7NN9+gsbFxue4jGo3ikksuwfDhwzFixAhMnDhxqbeR3uObbLIJvv7665XYeiKijsufu31ueALpL6ktmpqaEFfB79YAvcs0oMUNFQA37CXQi4uRCeyTE+z929MpOydP+oAkLxu6D+GainaTEwz2ACciIiIiIiIiIiIick4GuGmaGDduHF588UXE43HV83vPPffEvffei//++w9PPfXUMpdIv/HGG/Hzzz/j8ccfx/z583HRRRdhlVVWwR577LHY24wfP171xCUi6gxNtgxiCbDK55oT+3+7jYjqM+3NzkVT2QqWQO/hJAM8VZNtAkO6+4BruhtmrEVdjrl9iNRWwldinZxgMgOciIiIiIiIiIiIiMg5GeAS6J46dSquueYafP755yoILi644AIVHL/tttuWObAzefJkXHrppRg6dCh23XVXnHjiiXj66acXe5tXX31VZUQSEXUWewaxU/p/JwPglv7fUQTyiuDStHYZ4HpJKTIxAG7P4E93AFwmKFgywGsr2o2NfeyIiIiIiIiIiIiIiCiNAXDJ/D7rrLNw0EEHIS8vL7l8yJAharkExZfF77//jlgspsqZJwwbNgw//PCDCqTb1dTU4KabbsJVV121IptNRNQhewaxPcCaTjLhx9r/Owq/9P8OhxFvbLCsq2VKBriDS6BnZWVB0z2WALhkgGv2DPDqasRTJjYQEREREREREREREVEaA+CVlZUq2N2R0tJS1NfXL9P9VFRUID8/H16vN7msqKhI9QWvra1tt/6ECRNwwAEHYK211lqRzSYi6pA9gJpVEIRT2EugSwBcMsDNDjKI9aIiZIKgbXyaQy1oiTgjmBwIBKC52zLATd2Dpg56gMM0YVZWdv8GEhERERERERERERH1civUA3zgwIH4+OOPsfXWW7e7btq0aer6ZREOhy3Bb5G43NzcbFn+xRdfYMaMGXjttdeWeTvlPlLvp7GxUf2Wku2Jsu1E1HMl3ssr+34O2XqAB/L9Hd5nZz3ecm1bKIS40dpPWmhGs8oAVyW0ZTMW/bjycgGfb/m3zb7+Em7f3c9/cY8XyPV12Mc9t1+ftG1TctsCAUsJdNFYVwNkZ8Ml4xONJpfHysuhlZY6fn+nU2/eB07c39Q5OKZEREREREREREQ9MAA+atQojBs3Di0tLdhxxx3hcrkwe/ZsfP3115g4cSIuvvjiZbofn8/XLtCduOz3+5PLIpGIerwrrrjCsnxpHnjgAdx9993tltfV1cEwjGW+HyJybpBBAsRCPodWhGmYaKxqssR9TY+hPie64vGWh3xOSQl0o6UluX2uaAiGJ4CGf/5V1yfaRWj5+R1uc0eCzc1wxVoQdzUjVFfXelkeo7n18uJ09/Nf0uO5AzqijW3fHxVzKoCgmdZtStB1t+X1VF9X1/q9k5+P+Lx5yeUN//4L92qrrdRjdabufrxl0Zv3gRP3N3WOxIRLIiIiIiIiIiIi6kEB8EMOOQTV1dW477778Mwzz6hl5557LjweD0488UQcccQRy3Q/Ui5d+npLH3D3opKxUhZdgtw5OTnJ9X788UfMmTNH9RdPddJJJ2H//fdfbE/wMWPGYPTo0ZYTkttvvz1yc3ORnZ29Ik+diByYZSfv6RUNIEnmsKbplmWlA0vgDXq65PGWh3xm6bqOuGkg8XAexFDUfxB8s76Bqbdut6zjXWUVtV3LRCptxD3qt7qNXPakXF6M7n7+S3q8nJI+qA63tcpwNevL/vy7aJuS25aXh6bK+cnLhqYjy+uGa5X+aF64MLk80BRCsIfs73TpzfvAifubOod8JhMREREREREREVEPC4Angs/77ruvKnkuwes+ffpgo402Ql5e3jLfh/QRl9t+//33GD58uFomZc432GADaFpbe/INN9wQ77zzjuW2u+22G6655hpss802i71/KaduL7Eu5EQzTzYT9Q6J9/OKvqfD1RHLZbfPrYLfi7u/lX285S5/Lhne8dbMZpdpQI8bCBSUoEVKoMsmLPpxl5Yu+zaVbAfEGgF3tjwhYLvtJNquynQnI+2L0Z3Pf0mPFywIoHp2raWPe7q3KaFPTh4WqIFpDXCaug+RukropdY+4NLH3dVD9nc69eZ94MT9TSuP40lERERERERERNTDAuDSg/vZZ5/FDz/8oDK3hWRsb7rppirze5dddlnm+5JeqZLBPX78eFx33XUoLy9XJdSvv/76ZDa4BNbl/jvqKy4Z5IWFhcv7FIiILBngqbIKAo4JXkgA3Ezp/+02JFjvgj+nANGKCsu6mi24ukRrHm+9fLztcg+QlR+wXJYAuFNk9+kDl2TuG63fkYYEwGsrkVVSbFnPsI0hEREREfUM0rqtvKIMDY0N6d4U6mKVVeWIRMIorypHzGQrvd6O451ZON6ZheOdWTjemYXjnXnC4VC79torFQCXXrPnnXce3nrrLRV43nvvvVFUVKRKeC5cuFBlgp955pkYOXIkJkyYsMwbOnbsWBUAl77iUpZc7kOyu8WIESNUMPzAAw9c5vsjIloe9sCpZBY7hQqAL5poJPRYFL6cfGhuDwzJAE+hlyxHALwXCBYELZdD1c4JgAeDQWi6G0YiAO5uzQDPKbaOkVFmHUMiIiIicj45N/LnXz/jp7rP070p1A0i0Shm/jkTuhaCr4MKg9S7cLwzC8c7s3C8MwvHO7NwvDOTPzcXhrFP5wTApde3lCG/9NJLcfTRR7fLkJR/AiUzXDK5pZz5wQcfvMxZ4DfccIP6sZs5c+Zib7ek64iIllWTLXAatGUWp1NTU1Myi1joRhT+vGLEYzGY1dWWdTVbcLW3s4+TIwPgiy5LBni4pgLagE0s65kVFWoSmVMqDhARERHR0um6jnXWHoRBBVkIBvzp3hzqYuWV1dC1KPbeeQsUFuSne3Ooi3G8MwvHO7NwvDMLxzuzcLwzTygcwb/VTep/s04JgL/yyis4/PDDccwxx3R4vTzQUUcdhb/++gsvv/zyMgfAiYiclAGeZcssTn8JdGsAPJC/GszKSkB6g6ew95fu7eyZ+tGmZsSiMdXD3QkBcJfeth2G7kWophL6MOsYxaMRxOvr4crNTcNWEhEREdGK8nq8KCoqQE52dro3hbqYEY/D6/Wpk6l9M+x/rkzE8c4sHO/MwvHOLBzvzMLxzjz1jY2Y39DWOnZxtGW9w3/++QfbbbfdUtfbdttt8ccffyzr3RIRpZU9c9hxJdBTeoDrRjMCuUXtyp+7AgG4lufk27RTgM8Obf0tTjkFOPTQ1t89REeZ+k7pA64ywN3WQHxjXTW0wkJAs37tsg84EREREREREREREVHnWuYAeDgcRu4yZKnl5+ersr1ERE5nGibCdRFHBsClrUQkElHlzhP0WAT+/OJ2vaO14uLlK6NtRIBYuPW3iETkQ771dw/h9urw9/FZloVqnLH9Ho8HHo+130xjYwNcbje0gkLLcpN9wImIiIiIiIiIiIiI0hMAlz6lS6unru5Q09S6REROF66NIG5aP6+yHBIAl0lHwloCvRmBvGKYtgxwvSQzS7sE8qw9F0PVITiBTEbIsmXkRyLNMGLN7UrVG+Vl3bx1RERERERERERERES92zIHwImIenv5c+kf7Ql44ASqkkY8jrhpqMsu04AWNxCQDHBbAFzL0AC4vV97k2080yk7N99y2XB7EamtajdZwShnCXQiIiIiIiIiIiIios5kbVK6FOPHj0f2UvrMNjY2ruw2ERF1iyZbxrBkfy9XKfEu7//dlv3tXlSu3J9XhEZ7BrgtqzhT2MvVh2odFADvkwOXS0c83jqBwdB9iNRWwGcLgJtlzAAnIiIiIiIiIiIiIkpLAHyzzTZTv5dW3jwrKwvDhw9f+S0jIupioZqwI/t/JwPgsZbkZT3WDHcgG25fAEaFNWtYK87QAHi+LQDuoAzwYDCoen7HW9oC4OGacgT7llrWMxgAJyIiIiIiIiIiIiJKTwD8ySef7NxHJiJKM3vJbHtANd0l0K39v6Oq/3fcNGHaymZnag/wdhngDgqAy2QwTXfDbIm2BcCry6GXDrGsZ5RZs/mJiIiIiIiIiIiIiGjlsAc4EWUsewa4vad0ujPA47YAuJQ/N2vrEG9ptqyrlRQjE0nJ+lSRhiiMRRnXTsgA19xt/eQlAB6qqWjXrz3e1AhT+r0TEREREREREREREVGnYACciDKWk0ugh8Ph9hng+cUwy20ls3U3tIICZKJABxn7TskCVwFwPaXIigtoqK2CXtx+soLJLHAiIiIiIiIiIiIiok7DADgRZSTTMBGujTiyBLphGK0B8FhKADzWWgLdsJU/dxUWwKVl5ke5x+eGL8u7xLL26eL1euHxWretsb4eLq8XWmGhZblhn9RARERERERERERERERd3wOciKg3keB33Iw7MgNcgt/CNFqsJdAlA/z3eZZ1XR1kFC/V2qcDRhTQfa2XTz8diEYB36LLPYiMWbSprSR8U3UITuByuRDMykZDynyFcLQZRqxZ9Ww3q6qSy40yBsCJiIiIiIiIiIiIiDoLA+BElJHs5c/dPje8wbaezenu/y3iRms/a5dpQIsbCOQVwSj/zrKuq6ho+R+gcDPr5c1sl3uQrMIgaubUOa4EusjJy0dqaNvQvYhIGfTSUrT89lvb8oUMgBMRERERERERERERdRYGwIkoI9lLZUv5c8nadYKmpqZF/b/jyexvISXQQ+XWftGu4hUIgPciWbas/aYqZ2SAi+ycXLhcGuJxU102dB8itRXwlZZa1jNtY0pEREREzjN37lzsvPPOWGeddXDUgftZrnvr4y9w4wNP4MIxx2KP7bfGDfc/hvc/nw632w35FyMeBwat2g8nHr4/Nh26Lr7/dSbOu/Z2+JItc+JYtW8pDt93N+y0dedMTv3tr3/w1Ctv4tc//0a0uRmlRQXYZ6dtceAeO6n/e9777Gu89/k0TLjozCXez9OvvInyqmqcc8JRHV4/7Ydf8Nxr72DW7LlobolhQL9SHLLXzthlxBboLnuNPhuP3nSFeo7LamFFJY48+zJ88Mz9yBSff/M9Hn5uCiqqa7Bq3xKcceyhWH+dwfjqu59w71MvoLK6Bhuvt456Hefl9LHc9q7Hn0OfrCCOO3jfZVpO6ffJtG/xiBrvWgzs3xdnHHsYhq69xmKXJz43bnvkGcxdWIa1Bq2GC08Zhf6lrVXn5pVV4NaHn8Jvf/2LooI8nH7MIdhi4/XT/CwpgeOdGZY0ZgmhcAT7nXiOas2XMPrgfXHI3rugsSmEmx96Ct/98ju8Xg8O3H0nHLHf7mqdL7/9EeNuux8ed1ty0K2XnYN11xzUjc+Qumu8E+QY8aSx1+LI/XZXx7DknOOzZTnWKqusxugLrrQsa25uxp47bIPzTjoab3/yJe5/+kX4fF6cf9LRGL7BemqdZ6e+g4Dfi5G77oDejgFwIspI9gxweyA13Rng8Vhb+XN3LArN44MnKwemrVy2q2gFSqD3IsHCoOWyU0qgi6ysLLjcHsRbWicwxNw+hGsqECwtsazHEuhEREREPceCBQtQVV0DrN42qfGjr2Yg4Le2Ezpy5B7JE1XxeBxT3v0Yl918Hybdea1aVlKYj0l3Xqf+NkxTBSGvu2civB4PRmy28WIf/7EXpqrfSwo4/vDbHxh74z0Yfci+uOyME+D1uPHX7Lm48YHH0RIzVKBdAtTLEqQ+av89F3udBNHvfOw5daJux4uGq+f5yx9/4/r7HlXB/x22HIbu8Majd3TL4/RkC8orMeG+x3DN+adhg3UG44MvpuOyW+7Dg9dfimvvmYirzz0F6w1eA3c+/qw62X7lOWPU7ZqbW/Dgsy/j5bc/xLEH7p28v8UtJ2eQCR4T7nsct1z6PwwZvDre/OgLXHXnQ7jjivM6XP7c3derMR136/045eiDsd3mm2DSq2/j6jsfwv3XXgLTNDHu1vuw41bDcdPYszHjp98w/o4H8cK9N7b77KPux/HODEsas1R//zcXgwasgocnXN7uPh5/6TU1hi/cdyMqqmpw5hU3Yr21VsdGQ9bGrP/mYuQu2+OMUYd147OidI13wkPPvoL5C5mY47Tjs2fuuBZuXV/qsZZM/kw9Dp7592xcdsu9OPqAvdTl+556AbeNOw8LyyvVZCgJgDc0NqnJUXeNvwCZgAFwIspIIVug1Cn9vxMB8NYMcCQzwAP5JR0GS122YOoyafgLMGOA5gb6DAb++guIxQC3GxjcNsOsJ7BPXHBSCfRgMAhNd8NcFAA3dD/CNeXQS9e1rGeU8UCTiIiIqKfYYYcd8MvvM7HjsNZjurqGRsyZ35qZsziScb37dlvhzseexcKKqnbX65qGbYZthMP33R1PvvzGEgPgy0IyRQ7bZ1ccstcuyWXrrDEQF51yHGb+/W8ya12yQm67/DwVVC+vqlFBFDlxtvqA/hh72miVZSTXlVVWqdumisUM3PPkZJx+7CHYbbstk8s3GboOLhozCo2L2jqFI1Hc/cRz+O6XmaiurVeZ8BeOGYU1Vuuv7ltO/M1bWI6/58zHRkPWwkWnjFLZx3KdrC9ZT7/P+hfrrrk6Tjh0JO54bBLml1Vg6003VNso+3anI0/BM3dcox7vrCtvVvt66nufwO/z4tgD98FeO26jrnvjw8/x2ItT1UllyYZP9c1Pv+KBZ15S47PO6gNxzolHqef/8bRv8eX0b1Dx31/qf7Tx48fD5+t5ASDJ4t9rpxHJk94y+eHuJ57HO59+pU64Sua3OOnwA3DwaReiKRRGVjCACybcgVVKirDtZptY7m9xy8kZ+hYX4cX7bkDA70dLLIb6xkbk9Mla7HLx3a8z0Sc7CzsvqkIhk19eeON9/Dt3vsoijDa34KiRe6r33GYbDcWdV1ygPrso/TjemWFJYzZo1VWS60kge83VVu3wPuYtrFCZpHEzrsZW0zR45Fyg3G72XGy+0dBuejaU7vFOTJiULPOha6/ZDc+Iluf4bO6CMtzz1OTlOtYyDAM33P84xhxxYLIqktutq99SjSrxGf70lLdw6N67QNdbr+vtGAAnoozUrgS6gwLgqgS6BKQtAfBVEG9oQDxs3W5X8QpkgP98DRCtAnyFwFaPAddcA1RVAYWFwGOPoScJFlgzwJtDLWgJt8AT8DgiA1xLKR1l6h401VRAG7qdZb14YwPMUAha0PpciIiIiMh5dt11V1x7zdXJy59O+w4jNt8Yf/w9e7G3iUSb8cKb76vA7mqr9E0Goe2GbzBEBX4laGzPstv3xHPU7+aW1kpRL771AUoLC/DwDdaMHwng/v3fPFxz3qnt7n/t1VdTPx358MvpuPWyc1XwWzIEn331bVU6cXF++XMWQpGIyhC0G7bBkOTfUh69pq4BE2+8AprLhZsefAJPT3kTl595orr+gy+n49rzT8fGQ9bGjQ8+Yck+lhLtt487T5VVP/Wy63HtPY+ocqy6puOksdfg+1//UAH3VJXVtYjFYipTUbJoJKN5l202x7/zFuDepybj5kv+h4H9+6ls+wQJwl95+4O48pxTsOG6a6lMG8l+fOj6y9T11TW1OODU4zF0yLo9Mvgt5MRqasaXlMaX16WcHB+wSls1g9w+2cgKBFT5Y3mtjDvzJBTm56qy/qkWt5ycQ4Ke8llw8thr1Enuay84bYnL/5u/EKulvBbkRPkqpUX4b34Zqmvr1GfXrQ8/jc+++R7Fhfk489jDVEldcgaOd++3pDGzBERnz8PcheU49rwrEI5EsNNWm6kWLBL4PGC3HVQ2//tfTFeZ/ofuvSvWW6u1JP6s/+ahKRTBxOdfRSDgxxH77o49d2BJ7N463rLu7ROfwRVnn4w7Hp2UludIiz8+69+3ZLmPtaTKR9Dvs1R4Ou3oQ3DxhLuSJdAl4P7brH8w5sgDkSkYACeijNS+BLpzgo/hcBim0dIuA9xYuNC6okuDS4LWGSyY50/2VUyd3JDX3yEBcN36NdtQUwW9g0kLUtpeW331btw6IiIiIloRw4cPR0NDowqa5mRn44Mvv1EnkewB8ElT31ZBaiGBX8l4vurcU5ZYPjYnO0uVEZeTkvb1pj582zKVQJfAhSjKz08uu+Sme/DTzL/UQXNzLIa3H7+73e0kA1hK5Ipthm+kepgvSVVNndpeKdmecOJFV6Osqlo9h4K8XDxxy5U4YPcd1fOXMo4LKiqRnRXE7HkLkreRnrKJjLPRh+yH0eePVxnardu0djJgv/YaA5G7KKNRDFy1nyrn2ZHD9tlNZbzsvM1mmHD/Y6ipb8Bn07/HiOEbJ3uZHnfIvvh8xg/q7w+//AZbbrIBNl2/Natf+mY+/8a7KhteBAIBrNq/v/rdG0jG/RW3P6BK5Ev1An9K31AhmfPRaLP6W068dmRxy8lZJIj51uN3493Pvsb42x/EU7ddnZyIY18uJ9x9tteCnDCX/rANTSFM++EXnD36cJw1+nB8Mu07XH7rfXji1qvU5wA5A8e7d1vSmKWS4wcJqEkrFqnmMf72B/D0K2+q44aYYajqMFJxRr4Lxt50t6q+It/FxQV5asLYDlsNw5//zMElN92NfiWFyQoh1HvGe6tNN8T9T7+EXbfd0hJMJ+ccn0kVHvlZVnLs/fwb77ULbO+09WbqJ0GC6ccdtC9efe9jvP7B51itf1+cf9Ix6tivt2LtEiLKOKZhIlwbsSwL5jvjZIaUK2kNgKdkgMeiCBSUtCuVrZUUw5Uh5UoWR/fo8Of6LcuaqpzRB1z6HnptGSKNDfVweb3QClpL0SSwDzgRERFRzyAZdEPWWQufffODCjZX1dSq8uJ2kjklQWv5mfLQrarU+PpLKTFZ39ikMnYkYLGiEretrmsNhIvrLjhdbcdDEy5DS0tsMbfLbnuOmoZ43Fzy4+T2UdsrpdATJBtdHkeyz1sWZapLKd0r73hIldW+6YEnVJaSnKRL6FfSGtAWcvJdTtZK8EWkBlp0zaUykxMkqG4uZhsT+yBR2lGeS01dPYry85LrlBa1TSSWbJhPpn+nsuwTP7LdZZXV6vqemvXdESl1eub4m7D3jiPURIHWk+ltk68TJ93Z57d3kIkg8iNZnFIO9cff/1zscpkIYX8tyESIgM8Hj1tX6+2783bqM0pK8sr76eeZs9L0zKgjHO/ebUljlurUow/GyUccgOxgQI3jEfvtji++/VGVwb/u3kex/247qGDXmgNXxf677oA3P/5Clca+5dJzVEsTmdg2dO01sPM2m+OLGT9287Ok7hhvafvy57//qeMAcubx2fKSdkEyAUImdC7O3//NQ11Dk2pH9MyUt3Hn+AtU5Z/XP/gUvRkD4ESUcST4Lf1PnFgCXfp/CzPWPgPctGWA66VtpXAymT1730l9wLOzrScvw5FmNbb2sWMfcCIiIqKeY/0h6+LLGT+qrLjttti00+73m59+U5niciJ6Ra1SWoyB/fuq8uFdaf211lQnZz+Z9u0S17v90Umq3OZL99+kTrRJllmq6pr65N/lldXqxHuiR61UeuosBXk5KtDd9rhtEwQkW33P7bdOTliQnwevv0z1GVfbgd5h+g+/4MLr78AJh41MVhCQ8qrSZz2hrr4RTeEw+vddgVZb5BgzfvoNF1x3u2VZS8xQgZOOlmcHg6oUfuprwTBNVQpflq/atxShsDWJQK6Pw3pehdKD450ZljRmqaRSzPyyiuRlmfgm363SXkUCZBIYTdB1TVVokaouD0562TJBLXE76n3j/fFX36pqPPuffJ6a9PfTzFmqDLqURCdnHJ8tr6+//xnbDNso2ee7Iw8/9wpOOHSkqmJVUpSvJkasvuoqqqx+b8YAOBFlHHuGsMfvhjfocUz/b8i/FUZrJoVmxqDFDQSlBHq5NUjKAHjHkxeaqp2RAS765LWVnhSG24dIXRW0kpJ2JdCJiIiIqGcYtNoAlVEsvaJ36qAH9opUgZJA8vOvv4tjD9x7ievKibGlnRw7e/QReGbKW5j8+nsqk1lOaEtmyE0PPon8lcguTyW9YM8cdZg6YfrWx1+orGE5OfvtL7/j3idfQH5ujlpPHl9OsElQ/9+58/HKOx+pLO8EKUP+8x+zVEnPR1+YqiYUSMZhZ9thy2HqsX76/S/1WI+/+FrbdVsMw8dff6v6Lsq+kokNJ118DeoaGtFbzF1QpvqAXjDmWJVdlLD1sI3ww29/qmwwKT0vJ0elNKr0Daaea/DAAfjjn//wwRfT1eeLfFbJb2kd0NFyyfbcZOg6qKlrwDuffKUCJlJCd5USmVDTD8M2GKLewy+8+b7qIyultOUzcBOWRnYEjndmWNKYpfrz3zl45Lkp6nt5YUUVJr36NnYdsYWqqiIVax6a9LL6vJdyy1Pe/Rjbbb4p+mQF8fbHX6jWLTLmUiXgo6++Ua1EqPeN93knHY3XJ96RnPS3wTprqmPH/x1/ZNqeb6Za3PHZ8pLj/EQro458/+tM9T6XSgBSBUmC4I2hsPqOkFYHvRl7gBMRMj0AnlUYhKsz0wtWMgO8tfx5PFn+XEgGeJMtA1yCqEsuTJgZZPycWAJd9MnNg8vVVkLS0H0I15TD19eWAW6b3EBEREREziXlt7catiF+/fMfrD6g/wrdR3lVDfYafbb6W8rNDuhXiotPPU4FH1eW9Ou844rz8dTLb+DZqW8jHG1GUUEett1sY4w766SVvv+EXUZsgeLCAjz32jt44JmXVKnOVUqKVK9B6f2dKM15y0NP4ekpb6KksAC7bbulCoJLEEZIIObBZ17CP3PmYfON1sdZxx2OriDjdN6JR+PaeyciFIrggN13SF4n/Q8vOmUUbn3kaXXyWEqIjv/fySgutE5m7cmmfvCpOjk+4b7H1U/ChIvOwLgzT8Q9TzyPiupabLDOYFx8ynFp3VZaebk52bjmvNNw1+PP4baJz2CtQavh+gvPUO/BjpYn+sxef8Hpavkdj01SQdVxZ7d+XkhJ/FsvO0dlBz7+wlSUFBXgqnNPQTDAiRJOwPHODDJuixuz0RdciaNG7qG+lyW4ecfESTjsjItVK5B9d94W++2ynVrvirNPxp2PPYtDTr9IjeeBe+ykJoiJa84/DXc/8TwmPv8qCvNycP7Jx6zwMQ45f7zJ+cdnG667Voe3kRY98hp49KYr1DFr67IqFObnLvZxHn1hKsae2np8J+uN3HUHHHnWpRg8aIAqod+bueKptS16ucbGRgwbNgwzZsxAdnZbfysi6pnk46uurg65ubnLFcD++fWZmPl+W++iVTYoxVajh3XZ4y2Pn376Cb/9/CNClfPVZX+4CkVNc7Hz+CdRPeZUGHP+S67b57zzEB0+bPm358vjgGgV4CsEtnoMOO44oKoKKCwEHnssrc9/RR5v9vS5+GZSW1+inNJs7HrRdmndpoS///4bn73zGsyW1okMnpYmbL/ttiisaEbDXXcl13MPHoyCu+5cqcdaWd39eMuiN+8DJ+5v6hw83iQi6t3k+/utlydjw9VLkcPP+ZUiZTvlhN1FDg64zltYhsmvvoXDR+6JvqXWKk7U+3C8MwvHO7NwvDMLxzuzcLwzT31jI378pwx7HHCIOre6OCyBTkQZx14i255BnO4S6GZqf5ZYFIGC0g7LZOv8Qu84A7w6bOlblE5ZWVnQ9LZiKzHdrzLA2/UAT+nrQ0REREREREREREREK44BcCLKOE2Vzg6Ax42W5GW3EUUgvxjx2lrEm1uziBO0vn3TsIXOk1VgHT+jxUC0oRmOCYCn9DCMazoaayqg2UqgxxsbYIbDadhCIiIiIiIiIiIiIqLehT3AiSjjhKrDSwygpotkLbf1AG+lxyII5JfCsGV/Q3dDKygAGhqQ6fw5PmhuDWbMtGT5y/J0CwQC0HSPZVlDbQ304uJ260qGvzZoUDduHRERERFR+hx38L7p3gQiIiIiIuqlGAAnoozSEokh2mTNDs4qDMAJWlpa1I8Za8sA1xdlgBsdlD93aStYxGOz+yTcDmBR3+H77pPoO9BD+xC7NBeC+QE0VjRZyqAXDspHuum6Dr/fj0hd27Kmhnq4vF41gcGsrk4ulzF2MwBORERERERERERERLRSWAKdiDJKU5W1/LmQ4KlTyp8LSwa40YxgQUm7HtF6yUr0/3YHAHew9bcIBIBgsPV3D5VVYN32kK3Pezpl9+ljuRyONqtJDu36gJeVd/OWERERERERERERERH1PgyAE1FGsQdGA3l+6B4djgmAx+OILwqA67EoXIjDn1esymOn0mzB00wXtJWx72iiQ7r0ySuwXI7pPkTqq6HZJjHYx5iIiIiIiIiIiIiIiJYfA+BElFGaqpzZ/1u06/9tRNXvgGSA20ug92UAfEll7O193tOpT26e1GlPXjZ0H8LV5R1kgDMATkRERERERERERES0stgDnIgySpMtAzxoK52d7gxwe/9vdyAbHn9WBz3AVyIAPucVwAgBehAYsD/wyisSfW8tg77//9m7DzjJ0rLe4//K3VXVOU735LC7M7OzObBsApGkIAhK0CvpoiiKEa9XMICKAmYvKIiu4L0ICiKiwJIzu2zOO7OTY+dcuU64n/fUdDjVM7OzE/qc7v59P1t7+rx9qurtPqeqa85znud5uZajTIgzwDOZjKLxhJxqeT4APjmiNCXQAQAAAAAAAAC44AiAA1hV6gOjmY50uALgCzLA41ZJjW3dch1nUXA01tN77k907LNSeUxKdcwHwMfGpI6OZRwAr8sAnyzJsR1FY9FwBMBj8fkAeDylwviQurov8W1HCXQAAAAAAAAAAM5f8JEBAAiwBHq2I9wl0BvbuuRMTEgLMsONKCXQz9gD3HVcFSdLCoN0Oq1ofP56MzcSVW58ZFEZe2dmWk4xPKXbAQAAAAAAAABYjgiAA1g1TFC0ENIS6K7regFwd2EJdMsEwLvlDPozgyOJpKJtbQHMMrySmYTiqXgo+4A3NjYqFk/4xmamJhXr6lq0LVngAAAAAAAAAACcHwLgAFaN0kxZtuWEsgR6sViU4zh1GeAlpdu7F/X/jvZ0KxKJBDDL8DK/j/oy6PX93oOcmwmCL5TPzSiSSi26kMEepg84AAAAAAAAAADngwA4gFXb/zsWj6qhKaWw9P82nJMZ4BHXUdSx1NDatSgAHus9j/7fK1h9Nn/9/g5StqnZt14sV72LHWI9/jLodl22PwAAAAAAAAAAeGYIgANYNepLYpu+0ZFoJDwBcNeV69hz5c/NzNLtPbIHB33bxrq7A5pluGU7/dn8+ZCUQDea2zp861YsodLUuKJ1+9IhAxwAAAAAAAAAgPNCABzAqpGrywjOdISj/7dh+n879oL+33bJWza0di4KikbrsoZRk25Lh7IHuNHU0ipF5v/k2rEGFSeGF2Xz12f7AwAAAAAAAACAZyb+DLcHgGWrUNcTOiz9v2czwB1rvv933CorkWlWPNW4OAO8lwD4qaQ7wlsCPZPJKBqLy7Eq3rodS3kB8HR9CfQhMsABAADCrlKpaGhkTDO5WhsjrFzDo+Mqlkre0nbdoKeDi4z9vbqwv1cX9vfqwv5eXdjfq0+hWPL+TfZ0CIADWDXyY/6M4Ex7yALg9nwAPGaX1djaJddxZI+M+Lat7xuNU+/P0kxZdtVWLBFT0NLptKLxhD8APj6saNdW33YOGeAAAAChZtu29hw8rIcfJ/i9GpRKZT156IQi339AqVQq6OngImN/ry7s79WF/b26sL9XF/b36tSQznj/NjsTAuAAVo38eHhLoNcywBeUQLdKamzfLGd01Jxlu7AB8OwWKdUpJVpq61u2SJ2dUsvJ9WUq3b54f5o+4M09WYUlA3xORJoeH1Fs+82+7ZzpKTnFoqKN4Tk2AQAAMC8Wi+mS7Tu1bt067yJHrGzDw8OKJL+sF7/4xero6Ah6OrjI2N+rC/t7dWF/ry7s79WF/b36FAoFHT161Pu32ZkQAAewKphM4NJUra/2rHRIMsAty1K5XF6cAd7WtagndCTVoMj5Bqp3/a5//Xfr1pepRCquVDapcq7iK3sfhgB4MplUPJHQwsIsM9OTinV3L9rW9HyPbtiwpPMDAADA2UskEurs7FRzc3PQU8FFZrJKzGd5czK1t7c36OngImN/ry7s79WF/b26sL9XF/b36jM9Pa3BuraxpxJdktkAQMAKE0XVtwAJSw9wc8WS4S7IAI/bZaXbe2QPDi3K/o5EIks+x+VaBr2+7H1QzD6rzxDK53KKpFKKtrb6xusvegAAAAAAAAAAAGePADiAVaE+EJrMJJVoiIem/LkxmwEedaqKuI4aWrsW9YSO0v/7jNJ1Ze3ry94HqanZn7lfLFe8fV5f0t4ZGl7imQEAAAAAAAAAsHIQAAewOvt/n6JfdJABcNd15Dq1Xt8xq+wt0+3dsof9wdBYLwHwZ5IBXhgPRwa40dTm70FjR5MqTY0vuqihfp8DAAAAAAAAAICzF470RwC4yPJjdQHwznCUP58tge5a8/2/41atV3lDW5em63pZ1GcLn5NH/1CqTkmJllo/8D/8Q2lqSjK9xZd5P/B03YUN9fs9SE0trVIkKrmOt27FUypODCtVHwCnBDoAAAAAAAAAAOeMADiAVaE+E7g+UzjoDHDHnu//HbPLSja1KRZPLiqHfUEC4Ln9UnlMSp3MSN6/Xxobkzr8Gcorogd4iEqgZzIZRWNxOVbFW7djDSpNjihdHwCv6/sOAAAAAAAAAADOHiXQAazODPCQlUB3FmSAmwB4Y1u3lxVuj474to1SAv2M6vdrtWipUqgFnEMRAI8n5tadWEL58WFFu7t92zmUQAcAAAAAAAAA4JwRAAew4rmuuzgA3pEOz9y8DPAFAXCrpMa2Ljmjo5JTK5d9QTPAV7DGtkZFIv6xfEj6gM9mgC80PTa8qK+7MzUptxiOOQMAAAAAAAAAsNwQAAew4lWLVVVL8wHmMAXAy+WybNv2lUCP22Wl27pl1/X/jqTTimSzAcxy+YjFo2psbTxj+fugxONxJZNJ39jM1KRidRngBn3AAQAAAAAAAAA4NwTAAax4+VF/9nckGlFja4PCoFCozW2uBLrrKmpX1NDWJbuuFLbJ/o7UpzdjkXRdGfT67P8gpTMZ33oul1MklVK0rv96/cUPAAAAAAAAAADg7BAAB7Di1ZfATrc2KBoLx9ufKX9umH7fs/2/TYg73d4jZ9CfBVzfKxqnVp/dH5YMcKOppcW3XqpUZVsVxXp7feP2wMASzwwAAAAAAAAAgJUhHBEgALiI8uPh7P89GwB3HUeua8+VPzcaWrsWlcGuD5Li1DIhzgBvbu/0rduxlIrjI4sD4HUXPwAAAACY57quhusqZgEAAADArPjcVwCwQuXHiqENgJsS6Av7f8csEwA3Jdo7NVUfAO8hA/xsZNrTZ7wAIkjNLW2KRGNyndoFD3bcBMCHlF6UAU4JdAAAgOVicHBQr3vd67R161b97d/+re97X/7yl/Vnf/Znevvb364XvOAF+tM//VN94xvfUDwe99obmUDuhg0b9KY3vUlXX321Hn74Yf2v//W/lEqlvPub769du1avetWr9NznPveCzPfJJ5/UJz7xCW9ZKpXU09OjH/3RH9XLX/5yb05f+9rXvNsf//Efn/FxzGOYIPSv/MqvnPPv41z9/d//vRobG73nwdn5/ve/r3/6p3/SyMiI+vv79da3vlU7d+7UD37wA334wx/2xq+66ir9xm/8hlpbW333/eAHP6impqZFv+/TjSN43/nOd7z9PTo6qvXr13v7e8eOHacdN8x7wt/8zd/o2LFj2rZtm/c67evr87534sQJ/dVf/ZV2796tzs5O/fzP/7xuuOGGgH9KzGJ/rw5n2mcLzzO+4hWvUDKZnBsz79E/8RM/ofHxce/+jzzyiPc+/8Y3vlG33nqrt83Bgwf1f/7P/9GBAwe89/Wf+qmf0otf/OIl/xmxNPv70KFD3t/wffv2efv7Na95jX7kR35kyX9GnP7z2Re+8AX967/+q6amprRlyxb98i//svdvhoXM5/A3v/nNvrFKpaIXvvCF+rVf+zXvc/dHPvIR798VZv3aa6/1tvm3f/s3NTQ06Md+7Me00pEBDmDFq88Aru8RHXQG+Fz/b68Eekmp5jZF4wkywM9R/QUOpgS+67gKg0wm4+3bWVasQfmxAcXWrPFtRw9wAACA5WdoaEjHjx/3jX3zm9/0ArULmZOMn/vc5/Sf//mf3u35z3++fv/3f1/T09Pe97u7u73vm9tnP/tZ70SmCUR873vfO+Pz//M//7N3OxNzEvS3fuu3dOWVV3rbmsc3AfcvfvGL+tSnPuVt87znPe9pg9/Ga1/72kXB73P5fZyL2d8Vzs7AwIDe//73621ve5s+85nPeCfLf+/3fs87cfre977X24///u//rvb2du9k+cKTqH/3d3/nHacLnW4c4WAuQjEX2/zmb/6m9z7y0pe+VH/0R3902vHZffrud7/bu9jGHCPXXHON3vOe93jfcxxH73rXu7wLJMx7hjk5b75XLIan3dhqxv5eHc60zxYygeyNGzfOfY4wNxMMNczfARMo/fjHP653vvOd+uu//mvt3bvXu9jOPPZtt92m//iP/9Af/uEfehew1f8Nx8rY38Yf/MEfeBe1fPrTn/Y+g95xxx16/PHHl/znXO1O9/nMfF43QXHzXmw+n1133XXe1/UW/pvB3MxFpm1tbfrpn/7puQtG//RP/1S/9Eu/pI9+9KPe2MzMjHdxlLn4dTUgAA5gxSuEvQS6vSAAbpW9/t9upSJnbMy3bbS758I86dqXSxtfW1saL3+5OXtVW64AmU7//nUsR8WpkkITAI/NF19xozHlxoYXXdzgDA56pfEBAACwfNx888369re/7QvSmqwdkwl9Oibj2gTATSa2CVbUi8Viuummm7wToOYE5vkyJ7R/8id/Uq985Su9QLR5/EsuucQLkKTTtc/RJlvEZBkZJkj+53/+5973X/ayl+lXf/VXvczA2e+Zk2rn8/sYGxvzTsKa+ZhAvzkRa07EG+bE+zve8Q7vggGToWJO0JpMp89//vP6+te/rk9+8pP6wAc+4AVlZh/jZ37mZ7yTfbOPYbKnzJxNdrvJYLzvvvvmntucCHz1q1/t3cxJ5pUcVDdZRSaz64orrlA0GvUucjC++tWv6vLLL/cuiDAnyf/n//yfuuuuu7x/pxr/+3//b+VyOd1yyy2+xzvdOMKht7fXyxrbvn27qtWqd2w3Nzefdtx46KGHvCxAU2kikUh4F7iYE/OHDx/2XkcmGGPGzPFjTsT/xV/8hff+geCxv1eHM+2zhfbv36/Nmzcvur/5W/nggw/q537u57y//yaj9Pbbb/f+DpjPIuaiJvN33jDHiqlUYzJEsfL2t9m/JpPcfG4yr2vzPfP5wLz2EY7PZ2ZfmM/rmzZt8vaReW2az8Vn+qxq27b3udxkhJvAuBGP185Bm8/F5vFnKziZiyRWy3s6JdABrGgm87cwHs4S6OaqWvOBZGEJdNMDvKGtS/bIiPnr5Ns+1nuBAuDr6gLdKyTwPSuVTSqeiskq18qMG/nRgtJtwWf+mw+dCzPAjanxUUVv8QfA3WpFzsSE+aSyxDMEAADAuTInFv/hH/7BO0lpmOwKEyB86qmnTnsfE/g2GR8tLS1at27dabc1JQtNwNn8+6E+g/rHf/zHvaUJWBgme8uc+DJlreszsk1p01NlkJjSmuZ2KiZr22SnmJNwJvvIBFRMGcUL8fswczEB8X/5l3/xTgKaDCUToDHl0f/yL//Sy3gyGYum/KMJwpvA90te8hI98cQTXul2EzQ3ZRzNSb3ZMpEmm/lZz3qW9/v87d/+bS970ZxQfOCBB+ay2kzw1pSiN/MzZSHN+H/913/NZcysNObEqrnNMidWy+WydzGD+T3NMr97c9GuGTfHg9kfHR0diy50ON04wsO8T5jMwF/4hV/wTnKbi0TONH706FHfsWC+t2bNGm/clNE13zOVKEyp1q6uLu91tbDkLoLF/l75zrTPFpZFNn/nzcVmprWK+czwnOc8x/vaBMDMbbbFimH+dpqgqjH72cIE3czfUvP31bzPY+Xtb/O3frYahGEuenvssccogR6iz2fms675PDbLtKsxVXpmL2I6lTvvvNO7mHU2iG685S1v8S4mNRezmM/upvKPaW3xsz/7s1otyAAHsKIVJoty6spfZ0JSAt1kL5gPI74S6FZJ6bYeOUPDvm0j2SZFF/zhw+mZK1frL3LI1ZXBD4r5sJmuO2E5Mz2laFubIonkoixwAAAALB+mXKzpszpbMtQEjs2JyHomUGuC1uZmAq4mQ8cEgs9UGtxkAZl/O5yqBK0JeJvbbDaz+bo++G2YoIZh+rnO+t3f/V1vHiZD+nSlEE12sMkgNCfPnv3sZ89lgJ/v78OMm96T5uScOUFrep2bE++m/7hhSrObdXMi0GSKm5N+E+Yi0TrmBKEp6fmtb33Ly5IyFwqYk4l33323VxbUBNPNiePrr79eN95441wZdvNYX/rSl7zHNhngKzX4Xc/83k0Q7PWvf73375OFJ8cNs25+58bpgh8ERZYHEzz57//+b69vqLnIY3Jy8rTj5mKc+mxPcyyYcVMu9d577/UuijAXq5jX5cK2DQgH9vfKdqZ9tpD5+2b+bpt+3qbk9aOPPuplfJrA2K5du7xS1+Y93mQOmwvTZi+em2WqzZjqKuazxMKqKViZ+9s8nvkMeumll871h0bwn88WBr9NUNzsW3Mh0umYfyOYUummatJCz33uc733cXMcmOPhYx/7mHdxi7no01wY9Sd/8ieLjqmVhgA4gBWtMOY/QRRPxZXMJEMTADccq5YBHnFsRV27lgF+8grMC579vVr7gI/WSviFQbbJf7VeoVA7RukDDgAAsLyZIKvJcDZlv02w2QRWTXnxerNBanMzJ6tMv76dO3ee8bFN4MEEd1tbW895frP3nQ2EGyYYYubxoQ99yCuReyomO33hzzhbXvx8fx8mw8w89sITvCar22SCG4cOHfJO9r3xjW/0+iB67aNO8dwvfvGLvZspiW5KxZsTuSbAY26zJSAXPr4Jyq9fv97rhW6yG02mlHmeM2XqrxQm68eUhDe/LxPUWhjsnmXWL0SfdgTPlD41txe+8IXea8EERk43fqZjwbz3mNeOyUgzX5sT6uZCGvrFhgv7e2U72/drc1GZaWdhAmhmf5vPHOaCMMP83TMZoOaCr4985CNeC5aFgTbDZPqbv9U/9EM/5GWdYuXub3MhoKmuY/b57/zO73gJRQjH57NZZl+aakZmP992221nvL/5nGz6up/OwYMHvX9PmAoC5jOzqbRkLi794he/qJWMADiAFS1f3/+7vTE0f9Bn+6o5J3uAx+zaBxvTA7w++FkfHD0vVlGyCrWlYbJITDD+FNkky1W2MxPKDHCjua3dt16NxFXJTylad5GDPUAAHAAAYLkxZb9Nhs13v/td3XrrrRfscU35blOCfLZ/37kwpTNN4NeUEQ/D78MEVEwQfGFWu+mDbgL1JhhvynOaE37mJJ0pvW762Z7KkSNHvMxyc3LXZLaYxzNZ9qZsrznxu9Ds45tgvAnwmL62n/rUp7zsKVPudyUzmXymd7cJ+Jvsn9nM0NkMfcPsD/PvVNMbFMuXeb8wgY+FLMvyAienGs9ms957w8JjwfQSnS2R39/fP3cB/8KWbggH9vfqcKZ9tpCpgjJb1twwf09ny9eb7H6Tzf/pT39a733ve72/kaZ/tHnfN38XFmb5m0zh+uA4Vsb+nm2LY1rGmHWTdVxfDQbBfj4zTJWi973vfV4A3ATGz8RU7bjpppvO2Nf7jjvu0Bve8Abvs7C5WMJcgGoqJZmy+isZAXAAK1q+LvAZlv7fhpfBYNumUbm3HrdqJUfSHb2LM8AvZAD83l+Qvvvq2tL4hV8waSi15QqR6azPAA9PALy1o8vk+8+tW/GUCmNDiq3xn9AjAA4AALD8mNLbJtv5s5/97CnLnz9T5oSnCSCbk5f/43/8jzNua06aLTxxdipve9vbvICyeTzTB9tkVO/Zs8cLBJ9Pdvm5/D7MybcdO3Z4gWuT1WR6WJp5me3MCVxz8t0EcMwc77rrLu8Eofl9GCYrcTZAY3p5m9KQZt1klJuTf6ZkvMmCMSf1vvKVr3j3MycHTSaNyUo32eWm/Ls5aWzKhJrnMfdZqcxJdJPt/xu/8Ru+k6impP0jjzyi+++/3/t9m5Ojpn86GeDL25YtW7z2Aua1YY79//zP//SWJqByqnHzOjQXgZhsQPN6Ma8/U0J39qKZa665xrv45jOf+YwXCP3qV7/qva7NfRA89vfqcKZ9tpDZ5+a93JQ1NkFOc0HYbE/gD37wg97fY7Nfzd/Ee+65Zy4r2FyU9n//7//1LpIw2f7mwjVzERtW3v42+9hkfJu/96Yv9JmCpgjm85mp1GFaEZgLQE37nqdjMsBNu6LTefjhh73Puebvhfn8bYLgJi5hWgid7gLTlSIe9AQA4GLK15VAz3SE5x/y5gSNY8+XGTQZ4NF4QqmmNhUogX5esvU9wEdr/dbDkP2fbWpSNB6fK31vxxpUHB9Sa90HDtMDPPjZAgAA4JkwQQOT6fzQQw95GdvnwmTo/NiP/dhcoNf0xjb9sM2JygtxQtUEu00/wH/7t3/zTpiak94333yzdzJ0qX8f73jHO7y+lT/1Uz/lZSy99KUv9W7mc7spS256c5uAjbmv6eVtsr0NE8Q2JwVNtpoJ6psyjj/zMz/jneQ1GTCvfOUrvWwmc1LRlHc3JxHNCT+TRWNO/hmmvK858Wv+XWbKvf76r/+6VqrPf/7z3r7+0z/9U+82y/wO3/nOd+rv/u7vvNLwl19+uVcOFcubuRDEvHZM8ONv/uZvtHXrVq+ignkNnGp8NvPPvF7MuHm9mNfJ7HuCuSDCHDfmeybb0DyOaTVgLh5B8Njfq8Ps37RT7bOf/dmf9Xr/msCn+btm/q6astfmb7D5W2duhimxbD4DmD7fJpj6e7/3e3OtQszfR3MxmSm/bD4XmM8d5/o5BuHe3+ZiwMOHD3tB0DvvvHPuOV/72td6NwT/+eyyyy7zLnwwmeEL/cM//IO3fPOb3+x9Pfv6Nf92aG/3Vxxd6GMf+5j3mjY6Ojq8z9rmc7M5rsxjrWQR92ybN60A5urma6+91ruy1ZR7AbC8mbev2b5xpwtsfuOvv6/xw5Nz61f++A5tvXXjRXu+Z8KUHhw5cVTFiVpZvubJQ+rOJHTzr/2lRl/5E3IXlAJs/ZM/VvKqqy7MfO56g1Qek1Id0k0fld7wBmlszPwFlD760SX7+Z/O+Tyfyfy/8z3f9I295A+ep1T2/Er6XIjfgTlJ97l//b+ySvNZ6c++bIM2NK3X1Lv/YG4s2tam+N9+cFn8vi+W5XTMhfm5sLT4vAkAK5v5+/2FL3zBCxSavnlY+Zk5pk+76S2+0jNkwP5ebdjfqwv7e3Vhf68u7O/VZ3p6Wo899ph+5Ed+xDu3ejqUQAewopnM3zP1hg6KCX6ZUiOzWcBG3C4p3dEjd2rKF/w2YvzxfkbSbY2KxqJnPBaCYkpLRWMJ39jk2MiiMvfOxITccq0vPAAAAAAAAAAAODsEwAGsWJVCRZV85Yy9oYNiypiYm2Nbc2Mxq6TG9sX9vxWLK3qypAnOTiQaUbq9MZR9wE1vnVQq6RubmZ5UrGdxmXt3uFYdAAAAAAAAAAAAnB0C4ABWrPqApxcUbWsMTYlcYy4D3K31AE+3d8seHFzU/zsS5e36vPuAj4UjAG7Ul0XOz8wo0tDglT1fyB0aWuKZAQAAAAAAAACwvBFRAbBi1Qc8060NisWjoQyAx+ySTBfgdIfJAK8PgFP+/FzUZ/uHJQPcaGpp9a2XqrZsq7JoX7tDZIADAAAAAAAAAPBMhCMSBAAXQb4uAJ4JSf9vw/T/dl1HrmN763Gr5C29Euj1GeB1vaFxdjJ1GeD1x0OQWjv8Je2teINKE4v7gFMCHQAAAAAAAACAZ4YAOIAVK1eX8ZsNSf/v2QD4XPlzLwO8bIq0q7G9a1EPcALgFygDPEQB8Oa2dkWisbl1O5ZSYXx4UQa4Qwl0AAAAAAAAAACeEQLgAFas/Ejet54NUQa4KYHuWNbcuskATzW3KRZPLg6AUwL9nNTv79JMWdXy/O88SJlMRtFYYm7djqeUHxtQtL4EOhngAAAAAAAAAAA8I3EFrFwu693vfre+/OUvq6GhQW9605u826l87nOf0wc/+EENDAxox44desc73qErrrhiyecMYHlmgGe6QpYBbi/IALdKSnf3yS2X5YyN+baNrbnAAfDLf8c0H5eiJ/8E/M7vSCYYHw/8T8IFlWlvVCQiua6/D3hrf7NCEQCPx7XgENDk8JD6tt7g284dGpLruoqYHwQAAAAAAAAAADytwKMd73//+/XYY4/pYx/7mE6cOKHf+q3fUl9fn170ohf5trvvvvv0zne+U3/0R3+ka665Rv/yL/+in/3Zn9XXv/51L5AAAAuZTF+T8btQtq4ndFCq1ap38Y8vA9wuKd3es6j/t1GfFXzemrb617fWra8QsURMDS0NKk7W+qvPlkEPQwA8mUwqkUiqWpwfm54cW3yxQ7UqZ2JC0Y6OJZ8jAAAAAAAAAADLUaAl0AuFgj71qU95ge2dO3fq+c9/vt785jfr4x//+KJtR0ZG9Na3vlUve9nLtG7dOv3iL/6iJicntX///kDmDiDcTKbvQiaBNhOSALjJ/jbchT3ArbIaO3oXlT+PtrYq2ti45HNcKer7vtcfF0HKpP37NTczo2hbmyKJpG/cOcVFEQAAAAAAAAAAIIQB8N27d8uyLF199dVzY9dee60efvhhOY7j2/bFL36xfuEXfsH7ulQq6aMf/ag6Ojq0ZcuWJZ83gPAzmb4LNbY0eBnBYen/bTgnA+Am+B2Rq3Tb4gzw2Jo1gcxxpai/6CFXd1wEKdvc4lsvlErelRr1Gf/2AAFwAAAAAAAAAACWRQl0k9Xd1tbmlYKd1dnZ6ZUGNtnd7e3ti+5z1113eT3CTU/UP/uzPztj+fNKpeLd6oNO5r7mBmB5m30tn+r1nBupZVnPynSmz/t1f6bneyZq70WuHLtWAj1ml2UesbG9W/b3H/VtG+1dc9rnO+f5jN0rOWUpmpI6rpfuvVcql6VUSrr++ov+85+tC/F8iwLgo/nzerwL+Ttoae/0rVcVUzk3qVhvj+yjR8wh4t1MVYCl+J0v9f49G8vxmAvjc2FpsU8BAAAAAACAVRwALxaLvuC3Mbu+MHC90LZt2/SZz3xG3/jGN/S///f/1tq1a3XVVVedctsPf/jD+sAHPrBofGpqSrZtX5CfAUCwQQbTSsGImBrnC4weG/e9zuPZmPfav1jP90yMjY2pWqnMBUmilYJsy1Y1kVb58GE5C+ZdaW057bzPdT7px/9Kkeq43ES7Clf+rdJ/9VeKjI/LbW9X4W//9qL//Gfrgjxfo+s7DqYGp87rOLiQv4NEY0YL42RWNKWRI/uVam2tzdmVVw0lf+iQrPM8ds/GUu/fs7Esj7kQPheW1uwFlwAAAAAAAABWYQA8lUotCnTPrjc0NJzyPiZD3Ny2b9/ulUr/5Cc/edoA+Fve8ha98Y1v9J2QvP3229XS0qJsNntBfxYAS282gGxe0/UBJCtnKxabL3nesbbd2+5iPd8zYVo/RFzH60tuJJyKUpmsOnr6NDE+LnvBvLObN6vhNPM+5/mYC43chLf0fidmPbFg/SL//GfrQjyfu16KxfbOrVfztrLp7DmXw7+Qv4NqtapYIjFXCt9ONCpaziuzcaPy5hg4GRxPTE6e97F7NpZ6/56N5XjMhfG5sLQW/u0BAAAAAAAAsMoC4D09PZqYmPCCQfF4fK4sugl+Nzc3+7Z95JFHvBOKO3funBsz/b/3799/2sc32eT1GeaGOdHMyWZgZZh9Pde/put7gGc7MxfkdX+653sm8vn8XNDTiNslpdt7ZR7RGRr2bRtfs+aMz3Xe86m/39M8zoX4+Z+J830+s98Xch1XxcmSmrrP/SKoC/U7MBdiRWPzAXDzu58eHVJn3/qT67WbMzi0bH7fF8NyO+bC+lxYOuxPAAAAAAAAIFjRIJ/cZHGbwPdDDz00N3b//fdr165dikb9U/v0pz+tv/iLv/CNPf7449q8efOSzRfA8mBXbS/IeaZe0EExF/yUSiVfADxmlbz+344pQ171V8WIrlkTwCxXjkRjQslM8owXRwTFXOxlMsAXmhofUay31zfmjI/JNT3aAQAAAAAAAABAuDPAGxsb9fKXv1zvete79Md//McaHh7WHXfcoT/5kz+ZywZvamryggSvfvWr9apXvUof+9jHvDLmn/vc57ys8Pe///1B/ggAQuhUAc5MZzgC4Cb723DshRngZaU7emUPDPi2jaQaFG1rXfI5rjTZzrTG8/MXFuRGC6HJEk03pFRe0C54ZnpKsZ6eRdvag4OKb9iwtBMEAADAaRUK4fhMiYurWCzO7e/p6emgp4OLjP29urC/Vxf29+rC/l5d2N+rT+Es/y0WaADc+O3f/m0vAP7617/eKwf7tre9TS94wQu8791yyy1eMPwVr3iFV/r8Ax/4gJcF/ud//ufatm2b/vEf/9Erow4AC+XqAuANTSklUoG/3fkD4JblLaN2xesHnm7vWRQAj/X2UEr3AjDZ/+OHJ+fW8yEJgBuZbJMmRufL3ufzBUUaGxVtbZUzOT9nAuAAAADhYNqsmYv5Dxw4EPRUsAQqlYqXlHH06FENDg4GPR1cZOzv1YX9vbqwv1cX9vfqwv5enRobG0/ZAnuheBgm+b73vc+71duzZ49v/bnPfa53A4AzyY/U9/8OR/a3kcvV0n1nS6DHrVppay8D/MkHfdvGKH9+QWTryt/XXyARpJa2dh07tH9uvVS1ZVsVb9/XB8ABAAAQPHMO44UvfKF3og2rg23bisViQU8DS4T9vbqwv1cX9vfqwv5eXdjfq/fC5FAHwAHgQsuN1rKsZ2W6MgoLkwHuOrbkOt56zK71Km9s71W1LgM8WtcLGucm0+UPgIcpA7y1y1/FxI6nVJoc9fqAV598cn58gAA4AABAWJgTLU93sgUAAAAAEJxogM8NABdFfY/nsGWAz5Y/N+JWSZFoTA2tHYuCnGSAXxjZDv8FEPnxglzHVRg0t7Z7+3+WFWtQYWzIC4AvRAY4AAAAAAAAAABnhwA4gBUnX58BXlcCO+gM8Nny50bMKqmhtUvRaEzO4BIFwGMNUryxtjQaGkwaS225AtXvf8dyVJyqZd4HLZPJKBqbL8biRmOaGRlYlP3vkAEOAAAAAAAAAMBZoQQ6gBXFthwVJv3BzWxnJjS9SIrFohy76ssAT3esk2MC4zPTvu1jfRcpAH7Dh/zrH6pbX2FSTUnFUzFZZdtXBj3dFnzZynQ6rWg8Ibta6wVvTIwOau2W6xdlgLuuq0gkEsAsAQAAAAAAAABYPsgAB7CiFCaKi8pbhyUDvFAoeEFMXwa4XVK6vVd2Xf9vRSKKdXcv/SRXIBM0rj8GcmPh6AMejUbVkEr6xmYmJxdl/7uVspyJySWeHQAAAAAAAAAAyw8BcAAruvx5KpNUMp1QWPp/G45d6wEedaqKuo4a27sX9f+OdnYpkgjHvFeC+gB4/XESpGwms+g4iba3S3H//q8vkQ8AAAAAAAAAABYjAA5gRcmN+DN7M53hyP6e7f9tzGaAx6xa2etTZYBftP7fq1R9GfywZIAbTc2tvvViqVSrANDT4xtfVCUAAAAAAAAAAAAsQg9wACtKri6zNyz9v+cywF1X7skMcNP/2zAZ4M7gPb5tY2t6L95E9t8hWTkpnpW2vEm64w4zOSmbld70Jq1E9RdCmB7gYdHS2eVbr0biquanFevtkY4c9vUBBwAAAAAAAAAAZ0YGOIAVJT8W7gxwx17Q//tkADzdcaoM8IsYAB/+tjTwldrS+Pa3pa98pbZcobL1PcBHa/3Yw6C1y2R6R+bWrViDCuNDitZVASADHAAAAAAAAACAp0cAHMCKYgKbZwp8Bp0B7li17G8jbpeUzLYonmqkBPoS9wC3ypYq+YrCoKmpWdH4fEEWJ5bQzMjxRceAfeJEALMDAAAAAAAAAGB5IQAOYMVwbEeF8WIoM8Adx1GhUJjr/z2bAd7Y1iPXsmSPjPi2JwB+YTW2Nigai57xYomgpNNpReMJ39jE0IBi/X2+Mfs4AXAAAAAAAAAAAJ4OAXAAK0ZxsuQFwcPYA9wEv03J7YUl0E0P8HRHj+yhYRMh920f672IJdBXIRP8Trc3hrIPeDweVyqZ9I1NjY0o1t/vG3Omp+TMzCzx7AAAAAAAAAAAWF4IgANYMeozehONcSUz/szaIPt/G7Ml0COOrahrK92+uP93JNukaFNTIPNcyRb1Aa/rFx+kTNo/t+npacV6eqSI/880ZdABAAAAAAAAADgzAuAAVoz8aC3IvDD7OxKJKCz9v43ZEugm+9tobO+WMzjo25bs74ujvhx+bsR/vASpqaV1UcUAxWKK9HT7xu1jx5d4ZgAAAAAAAAAALC8EwAGs2AzwsPT/9mWAnyyBHrNrAfB0x+IM8Fgf/b8vhqbubGgD4G1dPb71aiShSm5Kkbpe8GSAAwAAAAAAAABwZgTAAawYufoM8LqS10FngLu2JbmuLwP8VCXQY2vIAL8Ysl3+fvAzw3mvL3sYtHX1SguqFVjxBhVGTyhaFwC3jh0LYHYAAAAAAAAAACwfBMABrBj5up7OmU5/wDPoDPDZ8udGzCopGk8q2dQqmxLoS6Kp2388WGVLpemywqCpuVnR2Hy/eieW0NTwcUXqLoawT/gvlgAAAAAAAAAAAH7xunUAWJZcx1W+rgR6NiQl0E2WsQmA2yYD/CSTAd7Y3nPKoGasLuv3guu4XqrOSImm2vr110szM1LTyfUVqrGlQbFETHbVnhvLDee98aBls1nF4gk5VmVubGJ4QM1rNvm2s48f846nsPS2BwAAAAAAAAAgbAiAA1gRitMl2ZbjG8uGJAO8WCzKcRw51QUZ4HZJma4+OWNjcsu1cuhz3+vvv7gTuuQX/eu/WLe+QkWiES8LfPL49NzYzEheXds6FLRoNKqGhqSqpfky/lPjY4psf7ZvO7dYlDs5qUhbWwCzBAAAAAAAAAAg/CiBDmBFqM/+jqdiSjUlFZb+34Zj17J7I66jqGMp3dEr+/hx37aRVIOiHcEHZFeq+osiciO1fRMGTdmsb31mZkYRcywk/MexVXfMAAAAAAAAAACAeQTAAawIuUXlzzOhKRNtyp8bsxngpv+3mVmms0/28RO+bWP9faGZ90qUresDPjM8n3EdtObWdt96sVS7YCK2qA+4/5gBAAAAAAAAAADzCIADWBFyI/5AZqYjHP2/ZzN5DceuzvX/Nk6VAX7Ry5+vck1d9Rng4QmAt3f7e79XY0lVZiYWHRP2MTLAAQAAAAAAAAA4HXqAA1gRZob9payzdYHOIJkS6I5tSa7rC4CbHuDF+gB4X9/Fn9D9vyZVJqRkm3TtX0q/9mvSxIRk+kr/5V9qJTM9wBfKjxdlV23FEjEFrbWrxzQql9xaL3sr3qDC2IDSdccEGeAAAAAAAAAAAJweGeAAVoT6Utb1gc7AA+BWLfvbiFtFxZINSmZbT1ECfQkywE3wuzxWWxom+D02VluucNluf59t13GVH/OXzw9Kc3OzovHE/EAkqumRwVNkgB9b+skBAAAAAAAAALBMEAAHsOw5tqNCXRAzLBngjuN4PcAXBsBjVlHpzj7zTdkDA77t45RAv6gSDXE1NKVC2Qc8lUopkVgQAJc0PT7i9YVfyD4xINepZYkDAAAAAAAAAAA/AuAAlj2Twes4tfLiYcsAN9nfruvWZYCXlOlcI2doWDKl0ReoD3biwst2h7MPeCQSUbrBH5zPTU8tygB3qxU5o6NLPDsAAAAAAAAAAJYHAuAAlr36AGYqm1QynVRYAuCGY1W8ZdSpKuraynT2yarr/x3JNinS3BzIPFeTproy6GEJgBtNdfu/UCgq2tamSGOjb9yuO3YAAAAAAAAAAEANAXAAK6//d0jKn/sD4LUM8Hi15C3Tnb2yT/iDmPH+Pi8LGBdX/fERlhLoRkt7p2+9ZNlyXUexvroy6HW94wEAAAAAAAAAQA0BcADLXq4ugFlf4jpIMzMzpmi1HKtW6jxuFb2lyQCvD2LWl7rGxVHfH34mRBngHT3+Y8CONag4Przo2KivHgAAAAAAAAAAAGoIgANY9uoDmE1d/hLXQQfAa8HvWo/y2MkAeLpjzaIy1gTAl0b9BRKVfEXlfK1EfdBaO7sUicbm1u14UjMjx8kABwAAAAAAAADgLBEAB7Ds1fdwzvaEqwT6bPlzI26VlEg3KZHOniIA7g9y4uLItDcqGouGsg94NptVNJ5YMBLR+MBxxdeu9W1XXz4fAAAAAAAAAADUEAAHsKxVi1WVc5VQ9gCvVCrezR8ALyrd2Se3UpE9POzbngzwpWGC35mOtG9sZqjWqz1o8XhcqUTcNzY1NqxY3xrfmD04KNe2l3h2AAAAAAAAAACEn/8sOwAsM/nRWknxWdFoZFFwM9j+35I9GwB3XcXscq3/98CAtx5IAHzzGyWnLEVTtfU3vlEql6XUyfVVoKk7o5nhXOgywI1MOq1Cfn5u01NTi48N25Y9OKQ4VQMAAAAAAAAAAPAhAA5gWSuM+QPgmc70ovLWQQfAHauWoR63S4qY/t+dvYt6OEfb2xVtbFyaifXc7l+/vW59FcjWVQmo7yMfpOaWFo2MzFcHyBcKijY3K5JtkpurHVOzZdAJgAMAAAAAAAAA4BeOKBEAnKP8SOGMgc2g+38bsyXQTf9vw8sAX9T/m/LnS50BvlCYMsBbO3t86yXLlW1VFgW7648hAAAAAAAAAABAABzAMpevywBv6s4qLLwMcNeVa1veesyqzTXTuUbWsWO+bWN9ZPIupfrjJDdakOv4S9IHpaPXfzGEFW9QYXRw0UUS9VUEAAAAAAAAAAAAJdABLHOFuh7g9Zm9QWeAm8zdWbMZ4I0dvZo54Q9expcyA7xwXHJtKRKT0v2SySS2bSkWk1ZJJnp9pQDHcpQfLyjbGfzx09LeoUg0LtepXTjhRmOaHDym9kUBcDLAAQAAAAAAAACoRwAcwLJlMnYL40VFFhSzCEsJdMdxlM/n58qfG/FqUQ0tHYonG2QfrcsAX7d26Sb38Dul8piU6pBu+qj0zndKY2NSR4f00Y9qNUhmEkqmE6oUqr4y6GEIgKfTacUScVnlWgDcGB86rq5FJdDJAAcAAAAAAAAAoB4l0AEsW/nxohzbDWUGeKFQ8ILgvgC4VVKmq1/OzIycqUnf9rG1SxgAhyKRyKKLJWaG86GZW2My4RubHBtdXAJ9ZFhuZb7CAAAAAAAAAAAAIAAOYBnLjeR86yajN5lJKjT9v00meLUWoIw6lqKupXRnn+y6/t+m9HistzeIaa5q9RdLhCUAbmQz/h7lM7mZRQFw01/eHhhY2okBAAAAAAAAABByBMABLFv1AUuT0WuyZ0MVAD+ZAR472f87290v65i/d7MJfkfidKRYatmu7BkvqAhSS1u7b71QLCna2KhoW5tvnDLoAAAAAAAAAAD4EQAHsGzNDPkDls09/oBmGALg9skAeNwqeksvA/x4Xf9vyp+HIgM8N1JQWLR19fjWy05EVrm46Fixj/svpgAAAAAAAAAAYLUjAA5g2ZoZ8meAN3WHKwDu2pbkOt56vFoLgJse4PZRfwA8vm5dIHNc7eoD4MWpkqplS2HQ3mcC3fPVDOxYg3IjJxRbs8a3nUUAHAAAAAAAAAAAHwLgAJatmWF/BnhTSDLAXddVLpeby/6ezQCPJlJqaG6XXV8CfW1db2csiUxHWpGov2R+LiR9wFta2hSJLSiLH5HGThxRvD4D/AQl0AEAAAAAAAAAWIgAOIBlqZwrq1KYDzCfKqM3KOVyWZVKZa7/92wAPNNZy9616oKWsX5KoAchlogp3dboG5sZCUcAPJlMKhmP+cYmRgYV6+vzjVECHQAAAAAAAAAAPwLgAJal6br+37F41MvoDQOT/W04VsVbRlxXMbvslT93BoekBYFxI04GeGCauur6gNdVFQhSuiHlW5+aGFtULcAZH5dTrJXXBwAAAAAAAAAABMABLFMzdaWqs12ZReWsgzI9Pe0tnWot0B2zil43ZxMAt44d9W0byTYp0tISyDwhZeuqBoQlA9zINjX51nMz+VoP8Ij/OCcLHAAAAAAAAACAeQsajALA8lGfqdvUHY7+38bMzIy3nC2BbsqfG5nOPtkH/MHK+Lq1itQFNC+6a/5Cch0pcvIaqL/4C8lxpOjquyZqcQZ4eALgre0dOnL02Nx6oVyWEgnFurplDw/NjdvHjimxdWtAswQAAAAAAAAAIFxWX7QDwIowPeQPVDb1hKP/91wA3HXl2JY/AN7V5wUrF4qtDaD/d6pdauisLY32dqmzs7Zc5RnguZG8XNdVGLT3+MudVyNxVXKTiq1f5xu3j/irCgAAAAAAAAAAsJoRAAewLM3UZ4D3hCsDvJb9XQukxq2St0x3rpFVHwDvp/93kJq6/MeNVbFVmiorDNp7+33lzp1oQhMnjiy6aMI6SgAcAAAAAAAAAIBZBMABLDtW2VJhvJZVHbYS6JZlqVgsyrYqc2PxalGp5nbFU42LMsDjQWSAY05DS0rxlL8byPSQ/+KKIHuAx+L+uY0dP6w4GeAAAAAAAAAAAJwWAXAAy87MiL/8uUmSbaorZR2W/t+zJdAzXf1y8nk5ExO+7WPrAgiAn7hTOvrZ2tK4807ps5+tLVcZ03+9/tiZCUkAPBqNKlUXAB8fGVJsnT8Abh0/Lte2l3h2AAAAAAAAAACEk//MOgAsAzPD/gB4Y1ujYomYwhgAj1llReR6AfD67G9Fo4qtWbP0kzz8Sak8JqU6pL4XSZ/8pDQ2JnV0SC96kVab5t6sJo5OhS4D3MikG1UszVc7mJ6eUrwuAC7bkj04qDjl9AEAAAAAAAAAIAMcwPJTn6HbHLL+34ZTrcxlfxuZrj7Zx477to319iqSSAQwSyzU3NPkW58ZrO3DMGhqafWt5wtFRVtaFG1u8Y3bR44s8cwAAAAAAAAAAAgnAuAAln0APBuS8ucLA+D2yQzwuQB4Z5+so/5ezbF++n+HQVOv/wIKkwHuuq7CoLWrx7dedqOqlvKK1fUBt47WVRcAAAAAAAAAAGCVIgAOYNmZGa7LAO8OVwa4a1uS6/gD4N1rZdcFwON1QUwEo76CQKVQVXmmlsEftLZec5FEZG7djiU1deLIojLo9ccWAAAAAAAAAACrFQFwAMuKYzvKjRR8Y00hKYHuOI5yudxc9rcRrxYVSzaooaVDVl2Z6vosXgQj3daoeNLfQ346JGXQM9kmReNx39joicOKrfNXD7COEAAHAAAAAAAAAMAgAA5gWcmPF70g+EJNISmBns/nvdLZs/2/ZzPAM139kmXJPnHCt318LQHwMIhEI4suojBl0MMgFoupIeEPgI8NDyq2br1vzD56JDRl2wEAAAAAAAAACBIBcADLykxdZm4yk1Ayk1QYTE9Pe0vbqgXAo05VUddWpru/Fvx2/IF7MsDDo6mujH59n/kgZTNp3/r05MSi8vlusShnbGyJZwYAAAAAAAAAQPgQAAewrNRn5ma7/cHBoPt/G87JEuim/LmR7V4n++gx37bR9nZFs+Eo3Q6peU1dBvhgeALgLa3tvvVcvqhoV5ciDQ2+cfqAAwAAAAAAAABAABzAMjM94A9MZrrCEwCfzQCfLYFuyp8b2e7+Rf2/4+vI/g6TRSXQB2dCU1K8vafXt16yXTl2VbG6Evr0AQcAAAAAAAAAgAA4gGVmemgmtBngJgDuOo5cx/bW49WCt8x0r10UAI+t9/dwXlLpfimzrrY0+vslE5A3y1WqpbfJt14pVFXOzfdyD1LX2o2+dTuW1PTg8UVl0O1j/ioDAAAAAAAAAACsRvGgJwAAZ8uxHc0M531jma6MwsBxHOVyOTkn+38bCauoSCyuxvYeTdaVp46tXavAXPke//p76tZXoXRbo2KJmOxq7eIFY2Ywp4amlILW2t7pHUeubc2NjR47qL51/mOIDHAAAAAAAAAAAMgAB7CM5MeLciwnlBng+XzeC4LbJ8ufz/YAz3SuUUSRRT3A4xsCzADHIpFoRE3dmTP2mw9KLBZTQzzmGxsbHlB8nf8Yso/6qwwAAAAAAAAAALAaEQAHsGxMD/jLn6eySSXTCYWq/7dV9ZZRp6qoa3nlz52hIbkLAuNGrC54ieA115VBN33AwyKbbvStT02MK1ZXAt2ZmJAzE545AwAAAAAAAAAQBALgAJaNmbqM3OberMJi5mTg0TkZ6DbZ30a2a62suvLnkUxW0bbWAGaJM2nqyYYyA9xoaWvzrc/k8oqtWSPF/J1MrMNkgQMAAAAAAAAAVjd6gANYNqbqMnLrA5ZhyAC3T/YAj1u1ALjJALf3+gPg8fXrFIlEFJgn/0yqTkuJZmn726U/+zPzA0jNzdLb367VqnmN/3gyPcDDoq2rVzpwcG69WLXlRqT42n5Zhw/PjdtHjkiX7wxolgAAAAAAAAAABI8McADLOAPcX7I66AC46zpybctbj1cL3jLb3b8oAzy2zl+6eslNPiaNP1hbGo89Jj34YG25ijV3+wPg5XxFpZmywqBn3Wbfuh1LanrouGIbNvjGFwbDAQAAAAAAAABYjQiAA1gWHNvRzHA+lCXQHcdRLpeTU631/zYSJgM8ElW6q092XQA8vp7+32GU6UgrloiFsg94W3ePIlH/3IaPHlC8LgBuEwAHAAAAAAAAAKxygQfAy+Wy3vGOd+i6667TLbfcojvuuOO0237zm9/Uy172Ml199dV66Utfqq997WtLOlcAwcmPFeRYjm+sOSQl0PP5vBcEd06WP5/tAd7Y1q1oLCHLlKVeILY+4AxwnFIkGll0UcX0QDgC4LFYTA0Jf9eSscETiy6mIAMcAAAAAAAAALDaBR4Af//736/HHntMH/vYx/T7v//7+sAHPqA777xz0Xa7d+/WL/3SL+mVr3ylPvvZz+o1r3mNfuVXfsUbB7DyTdf1Y25oSimZSSpc/b9rGeBRp6qoa3nlz52JCbl5f+Z6POgS6Dit5jX+svpTIQmAG02ZtG99cmJMsY3+DHBnclLOyeMRAAAAAAAAAIDVyJ9OtsQKhYI+9alP6SMf+Yh27tzp3fbu3auPf/zjetGLXuTb9r//+7/1rGc9S6973eu89Q0bNujrX/+6vvjFL+qyyy4L6CcAEFz/73BkfxszM7UgqVOtzGV/G5nutYtKUkeSKUW7uwOYJc7GogzwugsvgtTS1qbh8Ym59Vy+qNiaNVI8IZ28+GI2Czy5a1dAswQAAAAAAAAAYBVngJvsbcuyvJLms6699lo9/PDDXjnhhX78x39cb3/7208beAKwsk3V9WJuCkn584UZ4HMBcNP/W1K2e62sQ4cWlT+PRAMvvoHTaKnLADc9wF3HVRh09vb71ouWI9d1FF+31jduH/aX3AcAAAAAAAAAYDUJNAozMjKitrY2JZPzZYw7Ozu9vuCTk5O+bbds2eLL9DaZ4nfddZduuummJZ0zgGDM1GXiNvf6A5VBB8BNINKxa1m48WrBWzat2SjrkD8DPL5pUyBzxLmVQLfKtgoTtQsagta9zn/sONG4JgeOKlbfB7yu5zwAAAAAAAAAAKtJoCXQi8WiL/htzK5XKrVMylMZHx/X2972Nl1zzTV63vOed9rtzGMsfJxcrhZAc13XuwFYHhzb0cyIv492U09m7rW8VK/nUz2fqVZh3ltms7/nMsAjUaW7+jR94IDvMWIbN16w+V6Qn7/+vmd4rDD8vi+2VDapZDqhSmG+pPjUwLTS7Y1LPqf652rp6FI0GpPj2HPbDB05oPUbNqi84H6m6sC5zC+I3/fTWcnHXBh/37gw2KcAAAAAAADAKg6Ap1KpRYHu2fWGhoZT3md0dFRvfOMbvZOLf/M3f6PoGUoJf/jDH9YHPvCBReNTU1Oy7fkAAoBwyw3lVS3PByQ9acd7LRcKtWzrSCRy0edh3nfqn8+0YahWq6qWS3Ox40gpp2RHt2Zm8iqbAPiC95tSZ6eqU1MXbT5nI12pKGJV5UYqKkxN1darVbmV2vqFfr5ztdTPN6uhPaXiTGluffDAsNJrG5Z8Tqd6rlQsosKCP18Dxw6ru2O972+afeCA99q4EM8XtJV8zIXx940LY/aCSwAAAAAAAACrMADe09OjiYkJrw94PB6fK4tugt/Nzc2Lth8aGtLrXvc67+t//ud/Vnt7+xkf/y1veYsXLF94QvL2229XS0uLstnw9A8GcGZTe3OKxWJz6+m2BnX2ds5nxra0LFlwrP75TKDRzK1qWzJDUbuiRNRV29otyubzqjqOtGDurbsuV7Sl5aLN56ysf4lk56VYxruvXvISKZ+XMifXL/TznaOlfr5ZnRvaNX1sPoBVnbTnfi9LOadTPVdLc5OKYxNz2xQLeTXfvF0TC44xsy+bHFfRttbzfr6greRjLoy/b1wYC/9eAQAAAAAAAFhlAfDt27d7ge+HHnpI1113nTd2//33a9euXYsyu02W1Jvf/GZv3AS/u7q6nvbxTTn1+hLrhjnRzMlmYPmYruv/3dLXPPcann09L9Vruv75TP9vwz5ZAj1Rzct8p3nNRtkHD/nuG21rU6yt7aLO56xs+in/+k/91MV9vvOw1M83e3wtND0443v+pZxT/XO1dXRqcEEAPFcoKt7Xp0giKXdBGX776BHF2tuWxe97NR9zYfx94/yxPwEAAAAAAIBgnb5++BJobGzUy1/+cr3rXe/SI488oq9+9au644475rK8TTZ4qVSaK2d+5MgRve9975v7nrmZ8sMAVrbJ47Ug86zWugBlkGZLTTvVWhfmRLVW0rhpzQZZBw/6to1v2hTADPFMtaxp8q3nhvOyLUdh0NHb71sv2abCflWxdWt949bhI0s8MwAAAAAAAAAAwiHQALjx27/929q5c6de//rX693vfrfe9ra36QUveIH3vVtuuUVf+MIXvK+/9KUvecHwn/zJn/TGZ2/vec97Av4JAFzsMsFTdQHwlv7m8MxtakqObcl1awHS+MkAeLaXAPhy1dzjb5HhOK5yw+Ho6duzfotv3Y1ENXbsoOIbN/rG7cOHl3hmAAAAAAAAAACEQ6Al0GezwE1W92xm90J79uyZ+/rOO+9c4pkBCIPSdFnl/HxpZ6Olz5+hGxRzUU65XJazoPS0KYEeb0iroaVDhUP+EugEwJeHRGNC6bZGFSaKc2NTg7lFpdGDkG1tUzwakeXU+kcbI0cPa9P69b7trCNkgAMAAAAAAAAAVqfAA+AAcCZTJ/zZ3/FUXJn2tMJU/tw+Wf484jqK2WU1rdsut1CQPTTk2z5Wl6UbmLveIJXHpFSHdNNHpTe8QRobkzo6pI9+NOjZhULzmiZfAHx6YCY0vYXTyYSmS/MXXYyNDGjbhst821kHD3kVCuhFDAAAAAAAAABYbQIvgQ4AZzJ5fGZR9nckGo6g3uTkpLeczQCPV/OKnCx/bh+qK0EdjSpe16cZ4dXS6y+DPhWSALjR3OLPRJ+amFB882bfmJvPyRkeXuKZAQAAAAAAAAAQPALgAJZVBnhrSPp/G9PTtbnZJwPgiZP9v5t61y/u/712nSLJZACzxLlmgC8Ulgxwo62zx7eeK5YV7epSJOufs3XgwBLPDAAAAAAAAACA4BEABxBqk8f9AfAw9GH2ZYC7rhyr6g+Ar9m4KAAe2xSS8uc4Ky11AXBTDr1S8PeiD0rPen8v+YpiKk6PL8oCt/YTAAcAAAAAAAAArD4EwAGEllW2lB/N+8Za+/yByaBYlqV8Pi/bMkFRd64EupHtWSfr0CHf9vFN/qAlwq2pJ6tYPHrGizGC0rN+i2kG7hsbPPCU4pv9xxgZ4AAAAAAAAACA1YgAOIDQMn2X3Vps2WN6f9eXpg6y/Llrsr9Plj+fzQBvbO9VLNmwuAR6XXAS4RaNRRcda5PHwhEATySTaojHfGPDxw8rsWWLb4wAOAAAAAAAAABgNSIADiDUAfCFmroyiiX8gb9Ay58v6P8dt4qKyFXTmg1yhobkFou+7ckAX35a17aEMgBuNGfTvvXxsdFFJdDtoSE5udwSzwwAAAAAAAAAgGARAAcQWlMh7v89NTXlLe1q2VvGZ/t/925YVP48km1StKMjgFnifLT2N4eyBLrR3tHlW5/JFRRbt1aKJ3zj9ZUIAAAAAAAAAABY6QiAAwit+oBjS384yp8vDIDPlkA35c+NbO96WQfr+39vVKSuZzPCr3WtPwCeG8l5fenDoKt/vW+9ZEuWYyu+fp1vnDLoAAAAAAAAAIDVhgA4gFByHVfTgzOhzAA3vb+9HuCO7d2MRDXvLZu8AHhd/++NGwOZJ85Py5omr+/8LNOPfuqE/5gMyprNl5jaAnPrbiSioUNPKb6oDzgZ4AAAAAAAAACA1SUe9AQA4FRyYwVZ5Vpw+XQlqYOSz+dlWdZc/+/ZEujRRErp9l6N1wfAN4UsAL79N0zquhQ9WS77N35DqlalhL989mpn+s03dWd9F2KYqgSd7a0KWjrbrGRMqix4iQwdOaj2zf5e89b+/Us/OQAAAAAAAAAAAkQAHMCy6P/d0JTybmHs/x11qoo5VWX7tkqViuwTJ3zbxzf5g5KBa93lX99Vtw5fGfRFAfBdwQfAjabGBo3linPrYyNDiu+6ybeNdfiI3GpVES5uAAAAAAAAAACsEpRABxBKUyfq+3+HI/v7TP2/m3o3yDpyRHKc+Y0jEcU2bAhmojhvbXV9wCeP1fZ9GLS2t/vWp6dnFl9sYVVlHz22tBMDAAAAAAAAACBABMABhJLJtK3vxxwW8xnglbny50bTmg2yDh3ybRtbs0bRxsYAZokLof7Ci+nBnGxrwQUOAepcs9a3Xqg6UmOjYj09vnHrwIElnhkAAAAAAAAAAMEhAA4glKYG5stOh6n/96kzwPPzGeAHDoa7/Lkx+ag0/kBtaTz6qPTAA7UlfFr7W3zrruMqP1zb30Hr23yJb92E5UePH1J882bfeJU+4AAAAAAAAACAVYQe4ABCp5yrqDhZ8o219IUjA7xSqahYLJ4Mfrv+DPDeDcof+n++7eMbNyp0nvxzqTwmpTqkmz4q/fmfS2NjUkeH9NGPBj27UEk0xJXtyig3Mh/0nj6Rk7YrcC2dvYpHJKt2GHoGD+3Tls2bVb7rrrmx+osyAAAAAAAAAABYycgABxD6/t+xeNQLQobBzEwtM922atnfEddV3Coq1dyueGNmeWSA4xmprz4wMxiODHAjk0r41seGBhTfsnlRCXTXXRAlBwAAAAAAAABgBSMADiB0JusC4M1rmhSNhePtKpfLLer/HfH6f2+UMzEhZ8Y/dwLgy1/r2ro+4AO1YyAMWlr8Jdonp6YWHXNubkbO6OgSzwwAAAAAAAAAgGCEI6IEAAtMHQ9v/+/ZDHCnWvaWcWu+/Hl99nekoUHR3p4AZomL2QfcZIA7tum4Hbyu3j7feq5cVaS7W5GMv2KCRR9wAAAAAAAAAMAqQQAcQOhLoLf0hS8APpsBnqjWymFne9fLPlhX/nzDBkWivM0ud/UXYDiW4+sJHqSeDVt867bjamZsRPHN9WXQ6QMOAAAAAAAAAFgdiMwACBW7amtmyF9iuqWvSWFg27by+bxcx5FrW95YorogA/zQId/2lD9fGVLZpNKtDb6xyWP+izSC0rl2k6KuPxt94NDeUwTADyzxzAAAAAAAAAAACAYBcAChYoLfjuOGMgPcZH+7riv7ZPnzuR7g0ZgyXX2y6jLAYwTAV4yWuizwyePhCIBHYzGlEzHf2MjA0cUBcEqgAwAAAAAAAABWCQLgAEKlPrCY6Ugr0RBXGExNTfnKn8essqKurWzPOkVsR9aRI77t45s2BjJPXHita1tCmQFuNDf7KyRMjE8ovqWuNPrgoJx8OMq2AwAAAAAAAABwMREABxAqUydqPbZP1385DAFw52QG+Gz58+a+TbXsb9ue3zgSUXzr1mAmiguudW3zoj71bl2lgqB0dPX41nOFkuLr10kx/4Uj9RUKAAAAAAAAAABYiQiAAwh1BnhY+n8bk5OT3tKu1ALgcauWUdvcv0XW3n2+bWP9/Yo2NgYwS1wMbf3+DPBqyVJ+rHYBRNB61vkrDVRsR8VySfEN633j1n76gAMAAAAAAAAAVr5w1BUGAMnLqJ08XsuyPl3p6aCY3t8mAO66jhyr6o0lKrMB8M2q3v0F3/aJMGd/3/RR//pH69axSENLSqlsUuVcrfz97MUa2a6Mgtaz6RJF3C/Jjcxe0+Zq4OBT6tq8WdaB+aD3wq8BAAAAAAAAAFipyAAHEBrTQzlZZdufebsuHAHwmZkZ2bYtx+v/XSt9najmpEhUTWs2ytrnzwCPb9sW0ExxMUQikcV9wOuqFQQl0ZBWQ9Rfjn3k+BHFN2/yjVkHKIEOAAAAAAAAAFj5CIADCI2JI7US47PSbY1qaEopDCYmJrxlLQAuxeyKYo6lbM86mdijdfiwb/v4thBngOOc1PejD0sA3GjO+jPRx0dHFN+82TdmHz4s17KWeGYAAAAAAAAAACwtAuAAQmPi6FQos78XBsDtaq3/d6KS85Yt/ZtlHTok2f7M9fiWLQHMEksaAD825ZXGD4O2jk7f+nS+sCgA7lYrso8dW+KZAQAAAAAAAACwtOgBDiC8AfD14QuAz2aAJ6rz/b+tvf7y57H+fkXTaYXWoU9IVl6KZ6SNr5U+8Qkpn5cyGem1rw16dqHVutYfADf9wEtTZTW2Niho3f0btPvQfHC7VLVlJZOKdnXLGRmeG7f2H1B848aAZgkAAAAAAAAAwMVHBjiAULCrtqZOzIQyA9xxHE1NmWxfR45V9WWAN/dvUXXvXt/28a0hL38+8CXp2H/WlsaXviT953/WljitTHtaiQb/dWMTx/0XbQSld/Ml0sJsdNfR4OH9i/qAV/c+tfSTAwAAAAAAAABgCREABxAK0wMzcmzHN9baH44AuAl+myC4U6llf89lgEeialqzUdY+fwZ4Ytu2AGaJiy0Sjailr74Mejj6gKdbO5WK+MvwDx7ep8Sll/rGrD0EwAEAAAAAAAAAKxsBcAChLH+e7coomU4ojP2/Y1ZJUddWtnutoq5kHTrs2z6+LeQZ4LhgZdDrj9sgNWczvvWx4cHFAfD9B+RWa1UMAAAAAAAAAABYiQiAAwiF+kBiewj7f88GwBeWP7cOHZJsy7d9fMuWAGaJpVDfl3788KTchaXHA9TR2e1bn5zJL7oYw61WZB08uMQzAwAAAAAAAABg6RAABxAK40emQtn/2xcAr5Tny59Lalm7Wda+/b5tY/39imb8mbhYOdo3tPrWK/mK8qMFhUHvhs2+9XLVVilaOyYXogw6AAAAAAAAAGAlIwAOIHBW2dLMcC2relbben+gMSiWZWlmZsbL8nWsWunoRLU216a+zbL27vVtT/b3ypZua1Qyk1iUBR4G/dt2KuI6C0ZcHd/75KIy6NWnCIADAAAAAAAAAFYuAuAAAjd5fFquM19GOhKNqKXP32s5KJOTtRLXTqXkBRTNLVEtmEmqec1GVffs8W2f2LYtsLni4otEImpZ1xzKAHiiMaN0zD82ePSQ4vUB8N3+YxYAAAAAAAAAgJWEADiAwE3UlT9vWdOkeLIukhdgANywTpY/j1cLXpZtU+8GRWxH1uHDvu0T27cHMk8snda1Tb71scO1Evlh0NrsD86PjY0qceklvjH72FE5+VoZfwAAAAAAAAAAVhoC4AACV59BG6b+3+Pj497S9jLApXilVv68dcMlskz2t7Og5HQspvhWSqCvdPUZ4FMnZrwy/mHQtabPtz5TKCu6YYMU95dttyiDDgAAAAAAAABYoQiAAwiUKS8+dsifQdu+oTU8cxsb8wXAE+UZb9m6/hJVd+/2bR/fvEWRVEqh13q51H51bWlcfrl09dW1JZ5Wc1/WK9M/y5Tvnzjmr2IQlP4tl/nWbdvSxOS44ps3+8bpAw4AAAAAAAAAWKniQU8AwOpWmCiqOFULLs/q2NSmMCgWi97NsS25ju0LgLesu0TVz37Dt31iuz/4GFrb3+5ff3vdOs7IlOdv7s16md+zJg5PqWtLR6DzMjrWb1HcqciKJufGju9/UpsvvUTWU/O9vy36gAMAAAAAAAAAVigywAEEavyQv/x5MpNUtiujMJjL/i7XAvQRx1bMKiqZblJje8+iIGLisksDmSeWXn2VgrD0AY/G4sqm5oPfxvCJ40pc6j82q3v2eBUOAAAAAAAAAABYaQiAAwhUffnzjo2tikTmy0uHIgBerQXAk5UZRU5mf7uDQ3Km/WWvE9u3BzJPLL2OjW2LLuQIS0C5vaPdtz4xOaV43cUZzsSEnNHRJZ4ZAAAAAAAAAAAXHwFwAIEaO1gfAA9H+XNjfHzclwGeqMz2/96m6pNP+raNtrYq2tMTwCwRhgzw0kzZK+cfBr1rN/rWi5WqrPZ2RTJZ33j1SX8PewAAAAAAAAAAVgIC4AACUy1bmhqY76Mcpv7flmVpampKcl3Z1cpcBrjRsv4Sr4T0QonLLgtN5vrTevid0r1vrS2Nd75Teutba0uclUxnWsl0wjc2fthfzj8ofdt2KrIgG930rx88sn9Rj/r6izgAAAAAAAAAAFgJCIADCMzE4Um5znygLhqLqm1di8KS/W1KWtvVsgkhev8lqnlFohG1rN26KHgYv8wfXAy1wnEpf7S2NI4fl44erS1xVszFDvVZ4PX97IOS6ehRyq36xk4c3OtdpLGQRQAcAAAAAAAAALACEQAHEJr+361rmxVLxBSm8udW5WT5cxP8dh2lu9Yq5kZkHTjg2z6xg/7fq019tYLRg7VjJgzB+dZmf7nzkeHhRcdodd9+uWVzgQcAAAAAAAAAACsHAXAAIer/7c+oDdLY2Ji3tE8GwGfLnzf1bVZ1717JceY3jkaV2Lo1mIkiNAHwqRMzXln/MOju6/etT+eLim7b5h2rc2xL1b37ln5yAAAAAAAAAABcRATAAQTClD6v75ncsaldYWBKn89mgNuVWoZs4mQAPNu/Rdbu3b7t45s2KdLYGMBMEaS2da1e2X7fMR2SMuj9W/zZ3rZlaTw3pfiGDb5xyqADAAAAAAAAAFYaAuAAAjE9OKNqyZ8t2x6SDPDp6WlVq1U5tiXXtvwZ4P1bVX3CHzSs762M1SGejHll+xcaC0kZ9M6N2xS3F5Y3d3Vs75NKbK8rg04AHAAAAAAAAACwwhAABxCK8ueZ9kY1NjcoVOXPy0VvGbMrijlVJdNNamjrVvXxJ3zbJy7fGcg8EbzOze1nPK6DEosn1dSQ8I0NnziuxI4diwLgpuIBAAAAAAAAAAArBQFwAIEYOTAeyvLnxujoqLe0Tvb/ni1/3rrhMunECbm52vqsxE4C4KtVfR9wU9bfsRf0hw9QZ1eXb31ialrxumoFzuSknIHBJZ4ZAAAAAAAAAAAXDwFwAEvOZJyOHfBnynZu9gcSA53bXAZ4LQCeKk97y7aNl8nZvce3fbSrW7G6QCNWj466sv1WxdbU8drxErS+jdt86+VKRYVsRtEW/5wpgw4AAAAAAAAAWEkIgANYcvnRgopTteDyrM6tHQqDQqGgYrEo13HkWBVvLFmpBTRbN26Xs3u3b/vkTn9JaawuqWxKTd0Z39hoSMqgr9m6U1G7Oj/gOjp+8CkltvuzwAmAAwAAAAAAAABWknjQEwCw+ozWlT9vaEop25lWGIyMjHhL+2T586hjKWaVFI0n1bxmo0Z27/FdObQsy59veI1kl6TYyZ7rr3mNVCpJDeHowb4cy6DPDOd9fcC33b5JQWtoaVc6aiun+V7gA4cPasOOHSrffffcGAFwAAAAAAAAAMBKQgAcQOAB8M7N7YpEIgqD2fLn1sny58nytMzMWtZtkzs5JXdkWIrF5rZPLMcM8L4X+ddfVLeOZ8T0rz/0g2O+ALgppR+GY7q9rVW5yflqC2PjY4pff6tvG+vQITn5vCLpcFyEAgAAAAAAAADA+aAEOoAlN7q/LgC+pV1hMTo66i3tStFbJiszc/2/q0884ds2kskotmFDALNEmHRu8vevL82UvTL/YdC7dqNvvVAsy1m/XorPZ4XLcVR9gixwAAAAAAAAAMDKQAAcwJIqTBaVH68Fl8MWADe9v/P5vOS6sivluQzw2QC49bg/AJ7YsUORKG+jq12mM+2V8T9TlYOg9F92hSKuM7fu2lWdGDiqxKWX+LarPvpoALMDAAAAAAAAAODCI3IDINDs72Q6oeaerEKV/V01wW9XEcdW3CpIkaha11+qan0AfDmWPzfK41JptLY0xsfND19b4hkzpc5NGf+FRvaF43fZ3LNODU7tYo5Zx/bvUeLyy31j1cceW+KZAQAAAAAAAABwcRAAB7CkRg9M+NY7NrUpEg2+V/LCAPhc/+/KjNf/u6l3vaKOZB086Ns+sXOnlqUHfl26+421pfHrvy698Y21Jc5J59a6APj+Ma8PeNBMhYK2lmbf2MjwsJK7dvnGqk89Jbc43yscAAAAAAAAAIDligA4gCUV5v7fY2Njdf2/a+XPWzdcVsv+XlBK2vRQTlziLyON1atra4dvvThZUi4kfcDXrPP3qc8XS7K2bJYWlu+3bVV37176yQEAAAAAAAAAcIERAAewZEozZc0M53xjXXWlo4NSLpc1PW0C3u58Bnh5xlu2bdqu6iOP+LZPXLJNkWQykLkifJq6M4v7gO+rXVARtHWX7vL1AXesqoaGBxXfus23XfUx+oADAAAAAAAAAJY/AuAAlsxIXUAwnoqrpd9fnjkoIyMj3tKulL1MbxMwTFTz3ljH5stVeehh3/bJq64KZJ4IcR/wreHsA97Sv1kp08t+gaP7diu5q64P+KP0AQcAAAAAAAAALH8EwAEsmeGnaj22Z3VualM0Fo63oeHhYW9plU+WPy9PKyJX2d4NirtRWfv3+bZPXHVlIPPE8imDbi74CEsf8Pb6PuAjw0rUB8D3PCW3Ul3i2QEAAAAAAAAAcGGFI/IEYMUzgcDhp/wZ4N2Xdio0cztFANzo2LKrlhm7MJCZSCpx6aXBTBbLJgBuSv7nhmtVBELXB7xQlL1li0ldnx+sVuTs27v0kwMAAAAAAAAA4AIiAA5gSeRGCypM1ILLs7ovCUcAPJ/Pq1AoeEFuu1Lr/50qT3nL9s07VXnYX/48sXMH/b+xSLYzrcbWBt/YyP5wlEHvN33AHXtu3bEqGhofVXzTJt92zpO7A5gdAAAAAAAAAAAXDgFwAIGUP29oSqm5N6swmMv+NsFv11XUqSpueiZHomrbvEPV+v7fV1L+HKfuA961pb4PuL/qQVBa125Z3Af8wB4ldu3yjTmPP7HEMwMAAAAAAAAA4MIiAA4gkAC4yf42AcMwBcBtX/9vqWXtFkULFVlHDvu2TxAAx1mWQR/dPx6KPuDRWFxtzf4LToaHhpS83N8H3NmzW26lssSzAwAAAAAAAADgwiEADuCic2xnUSZs96X+QGFQTHBydHTU1/87VTpZ/nzL5ao+4s/+VkOD4tu2Lv1EsWz7gE8P5hQGfRs2+9ZN2f/qJduk6IKPAtWqqmSBAwAAAAAAAACWsXjQEwCw8k0em1a1aPnGureGo//35OSkKpWKXNeRXSn7+n93bNmlyn9/w7d9dMcORWIxLWtXvkdybSly8ud4z3sk25aW+88VAun2Ru9WGJ/vdz+0e0Qta5oUtPU7r9EDT+6TG63tZ8eq6tjQcfVs26bqnj1z21UeeECpa64OcKYAAAAAAAAAACzjDPByuax3vOMduu6663TLLbfojjvueNr73HfffXre8563JPMDcOHLn5ve342tDQqDoaEhb2mXSyYfXHGrpJhTUSQWV+v6S1V92J8BHqsrGb0spfulzPra0ujvl9avry1xXkxZ/55Lu3xjQ3v8x39QmtdsVNqZD8wbR/ftUeJqf7C7+sCDSzwzAAAAAAAAAABWUAD8/e9/vx577DF97GMf0+///u/rAx/4gO68887Tbr9nzx79yq/8Sih6qgI4O0On6P8dFiMjI77y58mT2d8m+K2xcdmDg77to7tWQAAcF1XvZf7je/TAuKplfwWEIESiUXV11s1tbFzxumxv6+ABORMTSzw7AAAAAAAAAABWQADc9B/91Kc+pXe+853auXOnnv/85+vNb36zPv7xj59y+09+8pN6zWteo46OcPQOBvD0TOBv/NCkb6x7WzgC4JZlaWys1pvcKuX95c+37lLlvvt920dbWxVZty6AmWI56bqkU9FoZG7dsRyN7KsdZ0HbcMl233qlVNJUZ4cijY3+8QcfWuKZAQAAAAAAAACwAgLgu3fv9gJQVy8ov3rttdfq4YcfluM4i7b/9re/rfe97316wxvesMQzBXCuRvaOybHnX88mMNi5tV1hyf427zWOXfX6IRvJ8rS37LzkapXvu8+3feLqa7ws2mVv6FvSwJdrS+Nb35K+/OXaEuctkYqrY3Obb2x4dzjKoK+57GrFq4W5dde1dXT/HiWuuMK3XeVByqADAAAAAAAAAJaneNDBp7a2NiWTybmxzs5Ory/45OSk2tv9QbK//du/9Zaf+cxnzurxK5WKd5uVy+W8pSmfTgl1YGkMPDHsWzeBwXgydkFeg7Ov5XN9rIGBAW9plWrlzxPlGUVcW4lMs7IdfRqv6/+duPYalUP0/nHOP/+Bf5LKY1KqQ+q+Tfqnf5JMJryprnHbbRf++c7RUj/fhZyT6QM+sm98bn3gyWFd4Wz3eoRf6Od6JlLN7WpOSPMzk44fOaQd11ytyt0/kMxTuVLl/ge8i0OeyXwvhpV8zIXx+MaFwT4FAAAAAAAAVnEAvFgs+oLfxuz6wsD1ufrwhz/s9RSvNzU1Jdu2z/vxATx9EOD4oyd8r7fmDVnvNXihHt+0UjCeaaDO3PfYsWPe3KrFnEy8IlkYk23Zyq6/TJP33ifr5GPXRFTaskXFc3y+i+Fcf/50paKIVZUbqagwNVVbr1blVmrrF/r5ztVSP9+FnFO6P+U77mdGcho4OKRMR+MFf65nqr2zW2MjtQvCjKnpGU3tvFay7bnqK/boiCYfe1zR9cGW/F/Jx1wYj29cGLMXXAIAAAAAAABYhQHwVCq1KNA9u97Q0HDej/+Wt7xFb3zjG30nJG+//Xa1tLQom82e9+MDOLPJ49Oq5m3FYrG5sc3XblBTS/aCZtmZ1/QzDSCZILxpwRCNRmVXyjJ3b6xOKxaPae2uZyl5327ZC+Yd37ZNrevXKTI1dU7PdzGc889vLjRyE97S3NdbTyxYv9DPd46W+vku5Jyam5uVaduj0nR5bqxwvKS+zb0X/LmeqW1X3aD9X/mq3EitnL9TrajQmFLLml5VBwZrr9eIlNq7V+ldlytIK/mYC+PxjQtj4d88AAAAAAAAAKssAN7T06OJiQkvCBWPx+fKopvgtwkenC+TTV6fYW6YE82cbAYuvqHdI771TEdaTT3ZC/r6m309P9PHHBoa8pZ2pSS5jmJWWXGrqIgi6tx2pXIf+oRv+9T11/ueKyzvIec9n/r7Pc3jLPXPH7bf99nOyXyv97IuHbrnmK8P+LbbNl3w53qmOrbsVOrzn1Ep1XpyxNWRvU/q2muuUfULX/CC30b1/vsVeeUrFLSVfMyF8fjG+WN/AgAAAAAAAMGqpX8FZPv27V7g+6GHHpobu//++7Vr1y4vKxPA8jb4hD8A3ru9KzSBgcHBQW9plWoliFPlSS/u19y/WbFiRdaRw77tk9deG8g8sXz1XNblWx/ZNyarEnz7jXiyQR0t/ovMhoYGFb/2Gt9Y5ZFH5fjaAAAAAAAAAAAAEH6BRpkbGxv18pe/XO9617v0yCOP6Ktf/aruuOMOve51r5vLBi+VSkFOEcA5KucqGj884Rvr3dGtMDCtFsbHx/0B8NKkt+y89GpV7rvPt30k26T4pZcEMFMsZ92XdCgSnb/gw7YcDe8dVRis37bdt14uFjS9fr0UW1AYxrZUfeDBpZ8cAAAAAAAAAADnIfA069/+7d/Wzp079frXv17vfve79ba3vU0veMELvO/dcsst+oIpxwpg2RnaM6KTLW498WRMXVvaFQam/Lnpv+valhyroojrKFWe8r7XecnVqtz/gG/75DVXK0JPVzxDyXRSHZvafGMDj9ZK7wdt3a4bFK/OZ3e7jq3Dh/YpuqMuMH7PPQHMDgAAAAAAAACAZdoDfDYL/H3ve593q7dnz55T3ucVr3iFdwOwfMqfd23rUCwRC1X58+rJ7O9keVoRuYo3ZtXcs17jD9QFwOtKQwNnq+/yHo3ur1UbMAaeGJbruL7M8CCkO3rVEnc1tmDs2JFD2nzNNXKfeGJurHLPvXIdRxHakgAAAAAAAAAAlgnOaAO44Bzb8TLAw1j+3HEcLwPcsEp5f/nzbVfKevRxucXi/B0iESWvuz6YyWJFBMDrWwOMHfK3BgjK2o2bfOv5fF7FnTt8Y87UpKzTXIwGAAAAAAAAAEAYEQAHcMGZjNdKoeobW7M9HAHw0dFRrwe46zqySrVAd0O5FpDs3nGDKnff7ds+cemlirX7y1gve8k2KdVRWxptbVJHR22JCyrTkVbLmibf2MDjwwqD9Zdfp5hdmVt3qmUNFmYUM73AFyj/gDLoAAAAAAAAAIDlI/AS6ABWnuOP1EqMz2pf36rG1gaFwYkTJ7xlLfjtKlHNe0HASDSmjm1XaPpPP+TbPvmsZ2nFufYv/et/WbeOC2rN5T2aGpiZWz/x6JAuf8mlikSCLYPetvEyNdp55WLJ+bkdPqDt11+v4pEjc2OVe++V3vD6gGYJAAAAAAAAAMAzQwY4gAvK9Dc2Ab6F+q7wl4EOiuu6GhgY8JU/byjW+jO3b96pyLEBOWMLuyJLqZtWYAAcS6pvp7/6QW40r5mhnIIWjcbU19vrG5uenpF7zdW+MevAAdnD4chaBwAAAAAAAADg6RAAB3BBjR+eVGmm7Bvr2+UPsgVlYmJCRa+/tyurVPDGGkq1AHj3jutV/v5dvu1j/f2KrVsXyFyxcrSua1lUAeHEY+EIKG/YeY0ijj23bldKGmxsUCTrL9tevvsHAcwOAAAAAAAAAIBnjgA4gIta/ry5t0lNXRmFqvx5uSTXsRW3iopbJW+sa/v1i/p/p266KfAy1Vj+zDHUt9NfBWHgMX+VhKB0X3KVGipT8wOuq0NPPaHU9df5tqvc5b84BAAAAAAAAACAsCIADuCClhg/8ag/AN4fovLnx48fryt/PuEtm/o2K1moyjp82Hef1Ers/2089UHp8ffWlsYHPyi99721JS6KNZf7y6CPH5lUYcJUIwhWIp1VV1uLb2xkZESRG2/0jVUeeUTO9PQSzw4AAAAAAAAAgGeOADiAC2bq+LTy48VQlj+fnp5WPl8LfFvF2fLntX7f3TuuU7ku+zva0qr49su0Io3dK418r7Y07r1X+t73aktcFF1bO5RMJ3xjxx/2XywSlM07r1LEdefWq6WCRrq7FEmm5jdyHMqgAwAAAAAAAACWBQLgAC6Y44/6yzpnOtJq6fP3Eg66/LldKcuxq4rZFcWrtUB49/brVf7ud33bJ2+8QZEob5G4MKKxqPou91dDOPbwgMJgzc4blSpPzg+4jg7s36Pkddf6tit///tLPzkAAAAAAAAAAJ4hojsALliJ8WMP+QN6/Vf0hqKHtje3Y8e8r6vFnLdsKI7LzKyxvUfpaKOqTz7pu0/q5mcHMlesXP1XrvGtjx+eVGEy+DLoqeY2dTQ1+saGh4cUqWsBUH3gQTnF4OcLAAAAAAAAAMCZEAAHcEFMHp1SbqRWYnxW365w9P+emprSzMyMPwBeGveWa664WZXv+LO/I9kmJa++OoCZYiXr2tahZGNIy6Bvv9JcKTK3Xi3mNbq2T4rF58bcakWVe+4JaIYAAAAAAAAAAJwdAuAALogjD9RKjC8sf96+oVVhcOTIEW9pV0pybcsrf56o1ALivVferNK3vrUo+zuS8AcqgfMVi0cXXRQSlgD4ml3P8pVBdx1bBw/uV/Lqq3zblb9/VwCzAwAAAAAAAADg7BEAB3DeHNvRsQf95c/XX9MXvvLnhVr2d2Nh1Ct/nulep0YrJmv/ft99Gp5zeyBzxeorgz52aCIUZdDT7d1qT/sv+hgeGlD0WTf6xkwGuFsuL/HsAAAAAAAAAAA4ewTAAZy34b1jKs34g2Lrru1TGIyMjKhUKtX1/x71lmuuvFnlb33bt320tVWJK64IYKZYDcJcBn3TpZcr4jpz65VCTqPr10kLLmRxSyWVf0AZdAAAAAAAAABAeBEAB3Dejt7vL3/etq5FTd1ZhcHRo0e9pVUuemWd49WCElYt47Zn100qfbOu/PlttykS5a0RF68M+pq6MuhH7j+uMOi74iYlSv4y6PsP7lNil/+CkNJXvhLA7AAAAAAAAAAAODtEeQCcF6ts6cRjQ76xddeEI/vbtm0dP14LLlYLtZ7fjSezv5v7N6thpiL7WC1APqvhdsqf4+JaW1cGffLYtCaPTSloma5+tdVlpw8NDcqpawlQeeAB2WNjSzw7AAAAAAAAAADODgFwAOdl4PFhLwg+KxKNaN3V4QiADwwMyLIs0whc1WLeG2ss1AJ3vVfcrNLXv+7bPtrVrfhll2rF675NWvP82tK47Tbp+c+vLXHR9VzaqcbWBt/YoR/U+tQHbePOqxVx7Ll1q1TQ0fYWRRob5zdyHJW+5n/tAAAAAAAAAAAQFgTAAZyXw/f6A3fd2zrU0JxSGBw5csRbesFv11GyPK2YUzFhevXuvFGlr33Nt33D7auk/PmWN0mX/nJtabzpTdIv/3JtiYvOXCSy8Ya1vrEjDxyXVZkPPAele+eNSpcnFoy42r/vKSVuvXVRGXTXdZd8fgAAAAAAAAAAPJ1VEOkBcLHkxwoafqpWUnzW+mv7FQaFQkFDQ7XS7JXCtK/8ecfWXYruPSRncr7fsdHwgucHMFOsRhtuWKtIZH69WrR0/JEBBS3ekNb6fv9rOD89qakbrveN2ceOyXpy9xLPDgAAAAAAAACAp0cAHMA5O3zPMVNdfE6iMa6+K3oVBocPH/YyVB3bkl0uKuI6aijWyp/3X/c8lb78Fd/2icsuU3zduoBmi9Um055W96VdvrFDd4ejDPqWG25XolJrGWA4VkUH89OK1QXGTRY4AAAAAAAAAABhQwAcwDlxbEeH6sqfm+zveDKmoJnA96FDh7yvq/kZb9lYGFXUdRRvyKizb5vK99zjuw/Z31hqm57lv+Bi9MC4ZoZyClr75svVEin5xk4cOyr90HN9Y6VvfUtOsbjEswMAAAAAAAAA4MwIgAM4J0O7R1Wc9AfJNt4YjgxqU/q8eDIwVynUAuDpwrC3XHPVLap+53uSPd9vOZJMKXX77Vo17vl56buvqi2Nn/956VWvqi2xZHp3dCuVTfrGDt5d61sfpEg0qm07r/KqJswyr6MTmzdJ0fmPDW6xqPK3vhXQLAEAAAAAAAAAODUC4ADOSX2grm1di1r7mxUGs9nfVrko164qXi0oUa2VdO675jkqffnLvu1Tt9ysaDqtVcMuSVaxtjRKJclcMGCWWDKxeFQbrl/rGzt8z3FZZUtBW3/j89RQHJ8fcB3tO7hP8euu821X/PwXvIoLAAAAAAAAAACEBQFwAM9YcaqkwSdHzljOOSilUkkDAwPe19X8tLdM52vZ39me9UrPVGUdPuy7D+XPEZRNN61TJDK/XilWdeSBEwpaY2uX1vZ0+MZmpiY0ddutvjFr3z5Ze/cu8ewAAAAAAAAAADg9AuAAnrGDdx+V68xnfcZTMa29pk9hyf42GamubalazHtlnBuLo973+q/7IRX/83O+7WM9PUrs2hXQbLHaZTsz6tne7Rvb/53DociqvuRZP6xEZb4nuVMta3+5oFh3z6IscAAAAAAAAAAAwoIAOIBnxK7aOvBdfwb1uqv7lEjFFTTbtrV//37v67KX/e2qoTimqGsrGk+qd8Mulb/3Pd99Gn/0R72ex0BQtty8wbc+PTij0QMLyo8HpPOSq9QW8ZfFHxo4ruoL/RUTyt/8lpyZmSWeHQAAAAAAAAAAp0bUB8Azcvi+4yrnK76xLbduVBgcPXpU5XJZct258ueZ3OBc72/ra98wUfK57SOpBjW86IWBzRcwei7tVLYr4xvbX3eRSRDMhSGXXHWDok51bqxazOlof58Ui82NuZWySl/7WkCzBAAAAAAAAADAjwA4gLNmyp7v/eZB31jPZV1qWdOkoJmS0XtP9iKuFGbkOraS5WklrII3tv6656n4+S/67tPww89TtCn4uWN1i0Qj2nLzet/YiUeHVJgsKmjrbnieMoVaCwGP6+rgkYOK3nKzb7vif39eruMs/QQBAAAAAAAAAKhDABzAWRt4Yli5kbxv7JLnbFIYDA0NaeZkGeZKbspbZnInvGXHtqsUf+wpuTl/mebGl/1YADMFFttw/VrFUwuyqh13UauBIKSyrdqwfp3pJjCnODOpwWuv8W1nHz+uyj33LP0EAQAAAAAAAACoQwAcwFnb+40DvvXW/mZ1betQGMxmf1vlohyroni1qFS5Fgjf8OwXq/jZz/m2T153neLr1gUyV6BeojGhDdet9Y0d+P4RVYuWgrb11h9VQ2lsbt21LT01Nqzo5s2+7Qqf+Y8AZgcAAAAAAAAAgB8BcABnZezQhEYPTvjGtt2+SZFIREGbmJjQyMiI93V5pjbHTH5AZmaZrn41TZRlHfFn0za+7GWBzBU4na23bfTKoc+yyraO3jugoLWuv0S9TSnfWG5yXGPPf75vrProo6o+9dQSzw4AAAAAAAAAAD8C4ADOyu4v7/OtN7Y2qP+qNQqD3bt3e0u7UpJdLipqV9V4sm/x+pt/VMV//ZRv+/j6DUpec7VWrUt+UdrxW7Wl8Yu/KP3Wb9WWCEy2K6P+Xb2+sSN3H5ddtRW0y259sZLl6bl1p1rWXqeiSIe/AkTh3z8TwOwAAAAAAAAAAJhHABzA05o4MqnB3bUM64XZqrF48G8h09PTGhwc9L4uz0x6y0x+UBG5SmZb1Z3oUHXPHt990q/6SUWiwc89MB3XS9231JbG9ddLt9xSWyJQl/yQv6x4JV/VkfuOK2g9O25QR7TkG5scG9H0i1/kGyt/97uyh4eXeHYAAAAAAAAAAMxbxREgAGfrya/4s79T2aQ237ReYXDw4EFv6VQrskp5RR1L6XwtIL7x1peq9Kl/920f6+lR6vbbApkr8HTa1rWo+5JO39hT3zgo13EVJHPByGXPeq7i1cLcmHm97W/KSA0N8xs6jgqfIQscAAAAAAAAABAcAuAAzmjy2JQGHvdndF7ynM2Kp+IK2tTUlIZPZpuWcyezv3MDirqO4o1Z9bZvVuWhh3z3Sf/ETygSD37uwOlcWpcFnh8r6OiDJxS0/ut+SC2Vcd/YyPCAci94gW+s9IU7ZY/7twMAAAAAAAAAYKkQAAfwjLK/k5mkNt0cjuzvPSdLmztWVdVCThHHVjo/5I1tePaPqPxpfyZqtLVVDS94fiBzDZWZfdLU7trS2LfPNFKvLRG4rm0dXib4Qk9+aZ8c21GQ4skGXXbNTYpZ5bmxajGvvb1dcmOxuTG3WlHhU58OaJYAAAAAAAAAgNWOADiAM/b+PvFoLaA8a9vtm5QIQfb35OSkjh+v9UYuTZtsU1eZvMn+thVLNqjPZH//4Ae++6Rf8QpFksmAZhwij/2R9OBv1pbGH/2R9Ju/WVsicJFIRJe9YKtvLDeaD0Uv8I23vETNpZEFI65Gx4Y1vSgL/ItyJiaWfH4AAAAAAAAAABAAB3BKruvqkf/a7RtLphPacusGhWFujz76qPe1XS3LKtayvzO5Wu/vdTe+QOVPfsp3n2hTsxpe8qOBzBd4ptbs6Fbb+ros8C/vk121FaREOqvt19yomFXyZYHvX7vGnwVeKavw7/QCBwAAAAAAAAAsPQLgAE5p4Ilhje739/G99Ie2hCL7e2hoSCMjtSzUykwtyzSbO+Flf8cb0upv3qTqyQD5rPRrX61oY2Mg8wXOJQt8x4su8Y0VJoo6dM8xBW3TrT+mluLwghFXY+MjmqxrL1D878+TBQ4AAAAAAAAAWHIEwAEsYnoNP1aX/Z1ubwxF9rfjOHrssce8r61yUXa5pKhdUSZfy/7eeOvLVPnEv/ruE+3qVuOPkv2N5aX7kg61rm/2je3+yj5Vy5aCzgK/7JpnKV4t1vUC75azMAu8XFL+//6/gGYJAAAAAAAAAFitCIADWOTg3Uc1M5z3jV3+I5cqlpgPbgXl8OHDmp6e9r4uT415y6bpo4q4jpJNbeqtZmUdOOC7T+Zn/ge9v7Ess8C3Pm+jb6w0XdaTX9qroG289aWLssAnxkc0UNcLvHjnnaruDX6+AAAAAAAAAIDVgwA4AJ9yvqIn7/QHrNrWtWjtVWsUtEqloieeeKL2dWHG6/8dr+bVUBz1xrbc+jIV6zJO4xs2qOF5PxTIfIHz1b6xRT2XdvrG9n37kKYGZhSkZKZZO25+nhKV+Qtl7GpJe1uzKjUv6F3uusr93YfkOk4wEwUAAAAAAAAArDoEwAH4mNLnJgi+0K4fu0yRaERBe/zxx1Uul71g2mz2d3bikMzM0h1r1PrkgJyx2viszBter0iUtzosX1f++A5F4/PHsOu4evDTj3nLIG285UfVE8n5xoozEzrwwh/2jVWffFLlr39jiWcHAAAAAAAAAFitiAoBmDN6YFyH7jnmG+u/olddWzoUtPHxcR06dMj7ujw9LtexlSpNKFme8sa2Xf8jKn3uc777JK+7TskbbwxkvsCFku3K6NLnbvaNjR2c0OF7/a/VpRaLJ3Xlj/600vmhuTHzujwhW+OXXebbNveP/yhnJtisdQAAAAAAAADA6kAAHIDHthw9+KnHfGPxVFxXvnyHguY4jh588EG5ruuVPa/kp72e381TtYB49/brlfrCtyXbnr9TPKHsz7/F66MMLHeX/vAWZTrSvrFHP7dbxcmSgtR16dXatKZTUac6N2Zen09edbmq8fjcmDM5qdyHPhzQLAEAAAAAAAAAqwkBcACevd88oOkhfznjnS/epsbWBgVt3759mpoymd6uShMj3jI7c0wxu6JoIqGNTZtVfeRh333Sr3yF4v39gc0ZuJBiiZiuesVO31ilWNV9n3wk8FLoO1/yBrXkji8YcTWTn9be22/TwpmVvv51le+6K4AZAgAAAAAAAABWk/n0LACr1sSRST15517fWOvaZm25ZaOCNjk5qSeeeML7ujw94WWAx6sFZXKD3lj/5bfJ/r+f9N0n2tWtzGteHch8l4Xr/84LUsrrni7p7/5Ocl2JbPlQ693epXXX9OnoAyfmxoafGtX+7x7S1ts2BTavdEevdt36Av3gB/eq3NDijTl2Vcdbm9SxYYN6Dh+e23bmb/6PEjt2KNpS2w4AAAAAAAAAgAuNDHBglauWLd3z/x6SsyCL1MRBr/mJyxWJBhsQtSxL99xzj1cC3a6UVJ6Z9MZbJg8qIleZjjXq+v5uucWi735Nb/15RRqCz1wPrXijFE/XlkZjo5RO15YItatesWNRVYbH/nuPpgeD7a+96ZaXan1TRBFnvg1BtTijPdddrVIq5SuFPvPBv/XaGQAAAAAAAAAAcDEQAAdWuYc+/bhyowXf2KXP26K29a0K2iOPPKJcLifXdVQcH/ayljO5ASWrOUWiMW1rukR6yp+53vCCFyj1rGcFNmfgYkqmk7ruNVf4xmzL0Q/++UHvYpagRKJRXfUTb1Vb7qhvPF/O6YnbbpGzoLpA+TvfUemLdwYwSwAAAAAAAADAakAAHFjFDt93TEfuX9i7V+rY2KbtL9ymoB07dkyHDh3yvi5NjnollROVvJqmawG2jTtuVfRzX/bdJ9bbq+zPvyWQ+QJLpfuSTm273d+eYHowpwf+7dFAM6sznWt01Q+9RI2F0bkx17E1kk5q/44dvm1zH/qwqvsPBDBLAAAAAAAAAMBKRwAcWKUmjk3pwX97zDeWaIjr+p++UtFYNPC+3/fff7/3dSU/rWphRhHXUevEXq/0eUvvRrV94W7TaHj+TtGomn/zNxWljPfTO/pZ6dC/1JbGZz8r/cu/1JZYFnb+yKVq7W/2jR17cED7vzPfbzsI6258oTZ1tyhmlefG7GpJh7dt0lBP99yYW61o+k/+RE7BX30CAAAAAAAAAIDzRQAcWIXKubLu/qcHvNLJC139k5cr05FWkCqViu6++27Zti27Uvayv2f7fsftsmLJRm08ZssdH/fdL/PqVyuxY3tAs15mjpkA+CdqS8MEvj/xCQLgy0gsEdONr79aica4b/zRzz2p0QP+18aSl0J/9dvUUxlSZEE2eqVS0JM3XKtcNjM3Zh8/rpm/+Eu5jv99CAAAAAAAAACA80EAHFhlHNv0C35IhYmib3zLLRu07uo+BcmUb77nnntUKBS80smF8UGv73djYViNxVogfGvTVkUf2+O7X+Kqq5T+Hz8d0KyBYGQ7M7rup670jTmOq7v+6QHlRvOBzSuZbtL1r/klNU/VWhjUuCo4FT184w0qJ5Nzo+XvfU+Ff/lEIPMEAAAAAAAAAKxMBMCBVcR1XK9P8Mi+Md945+Z2XfGy7YEHvx988EENDw97XxdGB+TalhKVnFoma4G0/s5tSn/tB777RdrbvdLnJvMUWG36dvbosh/e4hur5Cv6/j/cp0qhEti82jZcqqtue4HS+eH5QdfRTGNcj159lewFr9f8xz+u8ne/F8xEAQAAAAAAAAArDhEjYJUwQeVH/2u3Dt973Dfe2NrglVIOuu/3E088oUOHaoHu4vig7GpZUbuqtvGnvL7fzelOdX39Ef+dojElf+1XFW1rDWbSQAjseNEl6t0x31/bmBnO6wcfe1B21Q5sXhtve5m2re9TojIzN+Y4lsa6W/Xkju2aL5AuTf/Zn6u6e3cg8wQAAAAAAAAArCwEwIFVYs/XDmjvtw76xmLxqJ71hmvU0JRSkPbu3as9e2plzYsTw7JKBROxV9vEU4o5VaViDVp/3wlFnIUhMyn71l9Q9NJLA5o1EA6RaEQ3/MxVaulr8o0P7x3TXXfcL6tsBTOvSERX/MRbtT5ZUcwqz43bdlXH16/R4zu2y4lEvDG3XNLkO96p6uNPBDJXAAAAAAAAAMDKQQAcWAWZ30988Sk9/oU9i4JmN77+GrWvbw10brt379ajjz7q9Qgujg+pWqhli7ZN7FWyklPMcrX5sUklKv4gXvo1r1Hjj7w4oJkD4ZJIxfXs/3ndootZhvaM6rt/f68qhWog84olU7ruZ96unpK5gGU+G92WrWPrevXorp1z5dDdYlGTv/M7qjxSV+kBAAAAAAAAAIBngAA4sII5tuP1/H7yK/sWfe+611yhNTv9ZZOXOvj90EMPeaXPTbZ3YWxQ1WLO+17L5AE1lCakQlGbdufUUHZ89214/vOVed3PBDRzIJzSbY169v+8VvFU3Dc+dnBC3/m7H6g4VQpkXo2tnbrxZ35dnfkj3mt9lhOTBno79NCVu1SN1+bslkqa+p3fU/nuuwOZKwAAAAAAAABg+SMADqxQJuPzrn+8X4d+cGzR9658+Q6tv65fQalWq7r77rt18OBBubat/OiJWtlzSU3TR9RYGJE7Oa2NB0pqsmK++yZvuEFNv/w2r7wyAL+29a269RduUDKd8I1PHp/WN//6+5oamO/HvZRa1m7VLa/7DXXljyjizl/Q4sSjGu5q0X3XXqViQ4M35lYrmvrDP1LxS18KZK4AAAAAAAAAgOWNADiwAk2dmNY3/up7Gtw9sqjs+dU/ebm23rYxsLlNT0/rG9/4hgYGBmRXysqNHJNdqWWmNk8dUmb6hDQ8qi1HLbVZ/nLODc95jlp+93cUOZktCmAx09bgtl98lhqa/a+fwmRJ3/o/d2loj/99Yam0rN2iW1//G+o2QfAF5dDdeEwTzWnde+1Vmmpurg06jmb+6q+V/3//T67jrwABAAAAAAAAAMCZEAAHVhBTVvzQPcf0jb++S7nRWkb1rFg8qme9/mptvml9YPM7evSovvnNbyqXy6mSn1Z+9Lhc2/LKIreO71V64ph0fEDbBuNqsWvZoLMaX/ISNf3m2wl+XwjZLVLzpbWlsWWLdOmltSVWhJY1Tbr9l56lbGfGN14tWfre39+rR/9rt2xr6QPLzX2bdOv/fIf6KgOK2gv6kidimkkndM81V+jQhvWaLZRe+JdPqPJH75E9Pr7kcwUAAAAAAAAALE9EkoAVojRT1oOffkwnHh1a9L1UNqmb3nitOja1BTK3SqXi9fs+duyYXMdWcWJEVinvfc9kgraN71Fi9LhiwxPalm9V2l1QvjkS8fp9p1/9asqeXyi7fte//rt161gRTPD7Ob98k+66436NHZqYGzdtuJ/6xgENPzWq63/6SjX3Ni3tvLr7devP/Z5+8E9/oqPVJlmJtDceScRViVjavWWdRtvbtPPJPWosleQ89pgmfvGX1Pyrv6LUs561pHMFAAAAAAAAACw/ZIADKyDr+9jDA/ran333lMFvUw75eb9+S2DBb1Pq/Ktf/aoX/DZB79xQbWkkqnl1DDyk2OGnlDkxqZ25Dl/wO9LYqJbf+11lXvMagt/AOTAXv5ie4P1X9i76nukL/rU//56e+NLeJc8Gb2jp0LN/7l3aknWULE/PjZsKD3YipqG2jO668RodXdvvZYO7U1OaevcfaPrP/lzOTDB9zAEAAAAAAAAAywMZ4MAyVpgs6qF/f1wDjw+f8vubblqvK1++XbFEbMnnViwW9fDDD+vEiRNe1ndpclTVYm7u+42FETUdfUTO8LB6yo1aV+lQRPNB7lh/v9fvO75hw5LPHVhJzOv/xp+5Wvs2HtJjn98jZ0Gw27EdPfmlvTr+8KCuesUOJTqX7r0ikc7qxjf/njq+/Ek98sC9yjX1e+ORWExuJKpitarHL9moE12d2r7vgJpnZlT62tdUeeghZX/2zUrddhsXxgAAAAAAAAAAFiEADixD5XxF+751UPu+c0hW2V70/VQmqat/8nL1X7E463Mpyp3v379fe/fuVbVaUSU3pcrMlFzXnit53jy0W8kjuxUrlrW13KbW+n7fL36xF+AyGeAAzl8kGtG22zepa2uH7v34Q5oenL8YxZgenNG3//YH6rikVde+4go1dWeXZF7RaEyXvOin1bF1l+799Ec0kuqRHU9581UyKduqarQto7uvu1L9gyPauv+gUmNjmn7v+5T4788r+5a3KLGV3vUAAAAAAAAAgHkEwIFlpDhV0v7vHvZuVtk65TZrdnbrmlftUkNTaknnViqVdODAAS/4XamUVclNq5Kb9LK/ZyVzo8o+9QNFZybUbDVoc7lbCc1nnEabW9T0y29T6uZnL+ncV51H/1CqTkmJllo/8D/8Q2lqSmppoR/4Ctfa36wf+rWbvazvp755UK5jCozPG35yTF95/3e8kumX3L5Jbetbl2ReHVuv0A/98h/rsf/8R+07fEyFTI9MQYhIIiE3YqtqWzq0pkMnuju8QPiGo8eVMb3B3/Y2Ja+/QelX/YQSO3eSEQ4AAAAAAAAAIAAOLIce3xNHp3Tge4d19IEBr2TxqZiA9xUv3661V61ZsiCQmdvk5KQOHjyoo0ePqlouqZKf9m5yT87TlSLVsrKHHlRyYJ8SblTrK23qsBp9Jc9NOeOmX/h5RVuXJuC2quX2S+UxKdVRW9+/XxobkzpOrmPFl0S//CWXqf+qNXrgXx/1eoEvZILixx4c8G4dG9u0/rp+rb2qV8l08qLOK5lu0jWv/VX1P/YDPfD5/6fRZLfseIMUi9XKolerqsjRwf4uHenvUfvEhNYNjKrrgftVufcexbdsUcPzf1gNz3mOouZiDgAAAAAAAADAqkQAHAghE4AaPzKpE48O6fjDA8qPF0+7rSkVvPGGtbr8JZde9ADVXEB+YkIDAwM6duyYZqYmVS3mvf7eTrV8ciPzMzimwbBSQweVPfyQolZF7VajNlRalHDns75jPT3K/tzPKfXsmy763AHMa1vbouf+6rN16O6jeuLOvV5rhXpjhya828P/8YR6d3Rp/bX96t3e5QXRL5aey2/UD2+9XHu/+m968uGHNJNdI0VjiiQTcs0FQJYl23U00tai0bYWJewt6hkZ8zLD2z7898p95B+VuvEGNfzw85S8/npF4nzUAQAAAAAAAIDVhLPCQEhUClUN7RnR4BMjGto9cspgVH3ge93Va3TZD29VU8/F7ddbrVY1PDzsBb2HhgZVmJ5WtZSXVcrLsaoLgt62ZAJUjqPU2FGljz+heHFarVaD1la7lXYSc48Z7ehQ5rWvVcMLnu+VOQaw9KKxqDbfvEHrrunT7q/u01PfOiCdosiEqTxhLsgxt0RjXL3bu71AeM+lXUplL/yFN4mGjHa85I1ad/0xPfy5j+rE2JgK6S5FYlEpmpRrm/caS64rVWLS0d4OHe/tVLJSVdfouHqf2qP2H/xAyXRGyRtvUPKGG5S85mpFM5kLPlcAAAAAAAAAQLgEHgAvl8t697vfrS9/+ctqaGjQm970Ju92Kk888YR+//d/X0899ZS2bt3q3e/yyy9f8jkDFyLDe2Y4p8lj01754Ykjkxo7PLmoH++pxOJRryTxtts3XZTAt8nwnpmZ0dTUlFfefHR4yLtZlZLsSll2pVQLdDuuXFPm3Mx5wbJh9LAaB57yAt8m47u32qWsMx8gi61Zo/QrX+llZ0ZSS9unHMCpJRoTXln03us6Nfb4lPZ/97BK0ycrOtSpFi0dfeCEdzOaujNer/D2Da1qX9+q5jVN3vvUhZDt7tflP/lLurKc075v/af2HzigQmOnHJPVbcqim/ciyzZvXHLkqpSM62hft3eLuVJjPq+WYwfU8fhjavubnFo6O5W87DLFt1+mxPbtivX3KxK9MHMFAAAAAAAAAIRD4AHw97///Xrsscf0sY99TCdOnNBv/dZvqa+vTy960Yt82xUKBf3cz/2cXvrSl+q9732vPvGJT+gtb3mLvvKVryidTgc2f+DpsrrzYwXvlhs1y7ymB3OaOjEju2o/o8fKdma0/ro+bbppvdfv+0JkdefzeeVyOeVzOU2OjWhyfFTTU9OqViteZrcJeLtW1QuKa+52Mti9QLScrwW+h/YpVbG8wHdPtUcN7sm3mGhUyauv9rK9U7fcQsAJCHEg/NLnbdG252z2KlIcve+EBh4fkm2dIi38pJnhvHc7ct9xb90Ev00Q3ATGs121W1N3VtnOtOKp+DkHwq9+1S9qZ2FGJx78jp566B6NFaoqp1qllAmEO5LJCjfLk29PdkTKZTPe7XifFFFEMdtW4+gxZb70lLL/8W9qsaNqbe9QU2+vUuvWKbq2X05zi9xsltLpAAAAAAAAALBMBXp21wS1P/WpT+kjH/mIdu7c6d327t2rj3/844sC4F/4wheUSqX0v/7X/1IkEtE73/lOffvb39add96pV7ziFYH9DFg9TBDYrthe9mO1VPWWlWJVVROEyVVUmil7GZNzy+mSFwA/H829Wa3Z2aO1V61RS1+Td+yfdm627QW1za1SLqtUyKuUn1EhP6NiPq+iWS8UVCoUVa6UVbVsOaaEsG3LdUwpYRPc9h7sZD3zk+unEStNKzkx4JU6b8yZbO8GtVtNanKSXqBJsbiSV+xS6qablLr1FkVbW8/rdwFg6Zggdt/OHu9WLVZ1/JFBHbn/uEb2jT/tfU2wfOLolHerl0wn1NCcUkNzg3chj/d1U8orq26C74mGeO1mvm6MLwqYJ9NN2njzj3i33NBRHbrvGzrw5GOaiTSqmswuasWwkCtXViyqmeZm77ZQpJpTfM/Dij96j5LlslLVqsxlRg3xhJKNaTVksmpoblVDc4saW9vV0NKiZFOzYk1ZRTKZWmn1hobTvkcDAAAAAAAAAFZJAHz37t2yLEtXX3313Ni1116rD33oQ3IcR9EFWaIPP/yw973Zk8tmec011+ihhx4KfQB8enDGK3W98CS8z4JVL/bo+97Tl8R+uvud6RHKlZJmSjOL7lctTqo0PeR/SNuWMzklVS2TSud75Pmn8z+bt+b73nxwoDZ8MtD6TH++0/1U7snfrhe7df1x3Nn4rvn/fJLg/GObYXN/8z1TTndBwrNZ98eDZ38Od37VN6UF4wt+5tqYaw5gubPfi5wcO/m9RCqiZNKVaYtdiro68ISr/U/Ukq6diJl6VE4kIkeR2nqktl77Ocw8Twaw56ax8Ovz4DpKTA8rNTngBb6bihWvt3er3aCM0+MFvSOZrFI3XK/ks25U8tpr6bcLrAAmGL3xxnXerThZ0sCTwxp8Ylgje8dkVZ5ZJQtzUZC5mUoYZ8uNuGpIpxRLRBVNxBRPxhSNR731WHy7Otu3q61wTLmppzRTGVYpkZCVbpXisbnKFV6G+EmnClGbt8dKIundCpmmU2zgSFP/v737gJKyOv84/myhg1Rp6l8FpFdBFFEBEQVBRUAjJYgHFSOgUYKKGClREaRI0yBSbEcMXYkiQZCoKBCQYoEACmIQRDoLC7I7//O78I6zy+zurDuzs+X7OWfOzLzt3vvMG9aT533uPXDmtet7/5VikpMsJinJYvTfLMnJFuPzuX/OY927z2LP/rsbGxPj/rvFPRxkv33WMhKxsXFnv7s/DRZjsb/9vTy70f2JiInVGf7zz7wHjursdc9cJGCsKb4EkcmkfcDhsbExVrRYrMXGhX6NMyMNsR+Z6FpcfAErXrK8xcae+U/bQnFxVrZIYStUu7bFVawY+oUAAAAAAAAA5HpRTYDv27fPSpcubQUL/rY+cLly5dy64Fp7uEyZMimO1brfgcqWLesqxnOy/378nW16d7PlRKeKJtrx88+t0DPfCfMlHQmy/WwGONjs1Xmm6C0mmwfkS9GiXkonJXpbleFO3bUzp/2W0XdnhF/srycsPuGQxScctILHDlrJgwetxOk4K5ZcwEokFbdCvniLq1zZ4qtVswKXXWbxNaq7NXWZNhjIu4qUKmxVmv2fe6nS+8juI3bgh8N2YOchO/DDITu2LyHsbSafTraTCacyOEr12vUszsyKJh2z5KQ9lhS3304XTLCkQj5LLlbCkgsW/u3hqHA8FCRKtp5NuGaPc/4QBPkcYYFN6c/PEZ/F6amyHCDm531WJLmAP0oljh61RqPHWOnBg61Q86uj3DsAAAAAAAAA2SWqmaoTJ06kSH6L9/3UqVMhHZv6uEDaF7j/6NGj/vczVbKR9/WyzZb4a6LlRAmFD9npYPFLOmQ+3+mU2/xTY+P3OFO1l/Jz4Lbo8VnsqUSLO5lgsYnHrMDJ41YkIcGKHztqxU4muzW8i/oKWdEyFSy+Sn2LrVTB4ipWsviLL7b4KpdabPHi/hyIXidPnMje3vt8bg1zzRaRHVMPZ3d7EevPidNmJ7Ve8mn9g2h2+vSZ9ZP1fvbfybC2l0find19yg3xji8dZ+VLl7HyDc48sKbq7sO7j9ixfcfs6L7jlrD/hCXsS7AThxN/95+QpOQki0tWajtU8WYxF5olX2ixiWYxJ5LM9u+3JDtoyfHHLSk+0ZILJFlygRjzFSxsyQUKpZqK5ff1Mz+LdXOS5IzA+XxJFuc786ReYqFCtqdYMTs9f76VrF8v2/qg/x2d6UvOiAkAAAAAAACQ30Q1Aa41vVMnsL3vhQsXDunY1McFmjJlik2aNOmc7S1btsxiz4F85rsfzGxNtHuBsNtuZk0Cvm43axLwHQDygo0bzN57N9ubTUhIsBIlgkypDwAAAAAAACDvJsArVKhgBw8edOuAx5+dNllTnSupfd55551z7C+//JJim76XL18+zev36dPH7rnnHv93rSt++PBhK1WqVMjVbV26dLE5c+aEPKZQjk/vmLT2hbo9s/0Nt3C0n5lrRDveme1vJGS1/eyMdzhiG7hNVXYtWrSwFStWWPGz1eiRFI72wvlvSij9Id7h/Tc8oz4R75wb72DbU3/PzpiHq62c8DczrX359W+mKr+V/E7vv1EBAAAAAAAA5NEEeK1atVzie/369dbkbNXh2rVrrV69em4K1kANGjSwqVOnuv9TUclrva9bt84eeOCBNK+vKdJTT5ueOrGeEfUjM//HdCjHp3dMWvtC3Z7Z/oZbONrPzDWiHe/M9jcSstp+dsY7HLENtk3fs/M3yEp7kfg3Jb3+EO/wxzu9PhHvnBvvYNvTOi47Y57VtnLC38y09uXnv5lUfgMAAAAAAADRkzLLnM2KFCliHTt2tKFDh9rGjRtt6dKlNn36dOvZs6e/Gjwx8cz62W3btrUjR47Ys88+a9u2bXPvWhe8Xbt2Ee1j9+7dw358esektS/U7Zntb7iFo/3MXCPa8Q61D5GU1fazM97hiG20450T/035PecT7/AcH+r5xDs8x+e1v5nhkBP+Zuamezw7/2YCAAAAAAAAiI4Yn0qpo0hJbCXAlyxZ4ipqevfubb169XL7atSoYSNGjLBOnTq570qSDxkyxLZv3+72DRs2zGrXrh3N7gOIIk0h3LhxYzdzRHZNEZ2d7eW0/uT19nJan4h33o5BTow3AAAAAAAAAOQFUZ0C3asCHzlypHultmXLlhTf69evb/Pnz8/G3gHIybTEQb9+/c5Z6iCvtJffx5/T4p3dfSLeeTsGOTHeAAAAAAAAAJAXRL0CHAAAAAAAAAAAAACAXL8GOAAAAAAAAAAAAAAA4UICHAAAAAAAAAAAAACQJ5AAB5CjnTp1yjp06GCrVq3yb9u1a5f16tXLGjZsaDfffLN9+umnKc5ZuXKlO6dBgwbWs2dPd3xG9u7daw899JA1bdrUrr32WhsxYoSdPHkyYu1l5F//+pfVqFEjxUv9k2+++cbuuOMO117nzp3tq6++SnHuokWL7IYbbnD7+/btawcOHMjW+M6cOdPFsFGjRvbkk0/aiRMnIhrfYO1FM8ZaWWT06NF21VVXufFqrO3bt49ojHfs2JEivmqvcePGds0119jYsWMjFl/9htrWpEkT19b06dOjHt+DBw9a7969rVatWlazZk3X93Dew1dccYU7r27duta8eXM35sDfs02bNtaxY8cU8Y5UjEO5lwAAAAAAAAAgvyEBDiDHUuLn0Ucfta1bt6ZIfikhVq5cOZs7d67ddttt1q9fP9u9e7fbr3ft79Spk82ZM8fKlCljDz74oDsvLdqnxJaSTm+99ZaNGzfOli9fbi+++GJE2gvFtm3brFWrVi6Z5b2eeeYZO378uN1///0uGTZv3jyXMOvTp4/bLhs3brTBgwe7Pr7zzjt25MgRGzRoULbF98MPP7RJkybZ8OHD7bXXXrMNGzbYqFGjIhbfYO298MILUY3xjBkzXAJX/VKi9u2333ZtRSrG69evt+7du/vjq0Tozp07rXXr1vb000/b1KlT3YMOkYivflslr7VvyJAh7tjFixdHNb5PPPGErVu3zq677jrr37+/7d+/340pXPewrnv++ee7308J7YkTJ7qktr7rehrHf//7X3v55ZddvHXtP/3pTxGJcUb3EgAAAAAAAADkSz4AyIG2bt3qu/XWW3233HKLr3r16r4vvvjCbV+5cqWvYcOGvoSEBP+xd999t2/ChAnu84svvujr0aOHf9/x48d9jRo18p8fzLZt21wb+/bt82977733fNdcc01E2gvFgAEDfGPGjDln++zZs33XX3+9Lzk52X3Xe5s2bXxz58513wcOHOh7/PHH/cfv3r3bV6NGDd8PP/yQLfHt1q2b/1hZs2aNr27duhGLb7D26tev746LVoxbtGjhjvVirO+RjPHChQvd9Xft2uWuWa9ePd+4ceP88a1Tp46va9euYY+v11bgvT558mT/9aIR3507d7rP6qMX3yeffNLXvHnzsNzD6oM3Zu8efuKJJ3w1a9Z07Xm/ra7vXaNVq1a+li1bRiTGGd1LAAAAAAAAAJAfUQEOIEdavXq1XXnlla4CNJCqI2vXrm1Fixb1b9NUz6qC9farstRTpEgRq1Onjn9/MKrmfPXVV10VZaBjx45FpL1QbN++3S655JJztqs9tR8TE+O+6/3yyy9Psz+VKlWyypUru+2Rjm9SUpJt2rQpxX5VI58+fdpV8IY7vmm19+uvv9rmzZujEmNNk/3TTz+5abK9GOvekkOHDkUkxpoWOzY21vbt2+fGrXhrXF58q1Sp4iqIk5OTwxpfry1VcAeOQ9dUW9GIr44pUaKEm57ci6/aUgV8OO5hxThwzIqxYq9K7MKFC/t/W03N7rWn/XFxcRGJcUb3EgAAAAAAAADkR/HR7gAABNOtW7eg25WAKl++fIptZcuWtT179oS0P5jzzjvPrb/rUWLpzTffdGsMR6K9jCiZ9v3337spo6dMmeKSZG3btnVTMKu9atWqndOeN435zz//HFJ/IhFfTVWtadUD98fHx1vp0qWtQoUKYY9vWu2VKlUqw/hHKsY6V7Tfi3FiYqJ799axDveYNaW2Yqz9SrZq/LNmzfLHV7HfsmWLSxDr2HDFV22p3YIFC/r36yEHnaN1uKMRX01Rrv4Enq9zNS15OO5hnavP2ubdwzpe95Pi6107MMbe/nDHOLC9tO4lAAAAAAAAAMiPSIADyFW8BFcgfVeFZyj7Q6H1d7/55hu3Xu/MmTMj3l5qWr/Xu67Wyf7xxx/d2slK9GXUno7JSn+yEl8vEZlR++GKb6jtZWeMg/XJ+6yq3ozGlNUxK9GqYwLjW6hQIXeMd/1wthVsn+zatSsq8dW1VVGeer+qqMM55sB7ePLkyf74etcOHI/aTi0cMQ5sL61YAgAAAAAAAEB+RAIcQK6iZJ43lbRHyR5NP+ztT5380XdVeYdCia3XXnvNxo0bZ9WrV494e8FccMEFtmrVKitZsqRL5tWqVctVTQ8cONBNrRysvYz6o2mXQ5GV8aZOtAZrP5zxDaW97I5xYHIydf+875Ec8/z58y0hIcEmTJjgj6+qhcW7frjaUlV3sH2iqc+jEV8vaRx4vj4XKFAgbGNWdXvgPexNb67re79t4Hi035vuPZwxDmwvrVgCAAAAAAAAQH7EGuAAchVNQ/zLL7+k2Kbv3jTAae3XOt8Z+dvf/mYzZsxwSdqbbrop4u2lR1MgBybNqlat6hKZum4k+5OV8arPSsgF7lf1qxJ02h/u+GbUXjRi7E317k3VHfhZ7UVyzIsWLbKPP/7Yjal169b+a2lKcSVEvYcywhVfnatkcGCFs8bqtRWN+Gq/KsEDz9dnJZPDMeb333/fVV0///zz/ntY19Y4NWbv2oHj8RLVkYhxRvcSAAAAAAAAAORHJMAB5CoNGjSwr7/+2j91sKxdu9Zt9/bru0fJKk1V7O1Py6RJk9y6yWPHjrX27dtHvL30fPLJJ3bllVe6a3m+/fZblyxr3Lixffnll/41hfW+bt26NPvz008/uVeo/cnKeLVecb169VLsX79+vVvTWInZcMc3vfZq1qwZlRgrIVm5cuUU+73PXgI8EmOWjz76yEaOHOmqpL1tOmf79u1Wp04dd24446uqbn322vKurXM+++yzqMS3YcOGbl3tr776yh9f7VcFeDju4WXLlrnP6oNHVdpKgKvy2vtt16xZ429Ple+Ba4CHK8Y6N6N7CQAAAAAAAADyIxLgAHIVTZ9cqVIlGzRokG3dutVeeeUV27hxo3Xp0sXt79y5s0umabv267gLL7zQJePSogThSy+9ZPfdd59LzqnC0ntFor2MNGrUyFWFPvXUU/bdd9/ZihUrbNSoUXbvvfda27ZtXYLv2WeftW3btrl3JdTatWvnzu3atastXLjQZs+ebZs3b7bHHnvMWrZsaRdddFG2xLdbt242bdo0W7p0qTtv6NChrlJ26tSpEYlvsPbuvPPODKdAj2SMtX/06NFuCnC9xowZE9EYP/nkky7Jqvg2a9bMxVvj0piOHj3qErRKwIY7vnp17NjRbdM+HTN9+nTr2bNn1OKrY5o3b+7G27dvX/dgy4IFC+zYsWNhu4dvvvlmf3znzp1rS5YscRXXuk7p0qVddbaS0LrX1cb+/ftdFX64YxzKvQQAAAAAAAAA+VGML7AsCQByoBo1atjrr7/uTxjt3LnTBg8ebBs2bLCLL77YJQCvvvpq//FKTD333HO2Z88el4jT1NvpJYCVNEqdpPRs2bIl7O2FQsksXVOVn8WKFbO77rrLJfRUaaoE15AhQ1ziXrEZNmyY1a5d23/uvHnz3BrQhw8fdslA9UeJueyKr+I5c+ZMVxF74403umTf+PHjIxbf1O0pNqmnnM7OGCvhrGSvjtH6z0pGKnkaqRjrfFU8B6PE7O233+4SvpGIrxLXSs4qCVy8eHHr3bu39erVK6rxVcL5kUcesdWrV7tEeMWKFW3EiBERu4eVfG7VqpX/91RCWvHZsWOHP96alj0SMQ7lXgIAAAAAAACA/IYEOAAAAAAAAAAAAAAgT2AKdAAAAAAAAAAAAABAnkACHAAAAAAAAAAAAACQJ5AABwAAAAAAAAAAAADkCSTAAQAAAAAAAAAAAAB5AglwAAAAAAAAAAAAAECeQAIcAAAAAAAAAAAAAJAnkAAHAAAAAAAAAAAAAOQJJMABAAAAAAAAAAAAAHkCCXAAudKAAQOsRo0aNn36dMsNrr/+enviiSfS3P/jjz+68cybN8/yi6NHj1rr1q1t+/bt7rvGP3HiRMsrNBaNKTPmzJlj999/f8T6BAAAAAAAAABAXkcCHECuTJwuXbrUqlevbu+88475fL5odwm/w7PPPuseDKhatWq0u5JjdO7c2fbt2+cS4QAAAAAAAAAAIPNIgAPIdRYtWuTeBw8ebDt27LAvvvgi2l1CJn399df23nvvWZ8+faLdlRwlJibGxWTs2LGWmJgY7e4AAAAAAAAAAJDrkAAHkOvMnTvXmjVrZldddZVdfPHFNmvWrBT7//jHP7rk+CuvvGItW7a0evXq2V133WUbN25MMT11mzZt7OOPP7ZbbrnF6tatazfddJMtWLDAf4ymI9cU1pqePL3pzA8cOGDDhg2zVq1aues0bdrU+vbte855maW233rrLTcWXbNRo0b28MMP2y+//JLiOPX59ttvtwYNGrjxjhkzxk6dOuXfv2nTJuvdu7ddeeWVdvnll9sDDzxgW7du9e9ftWqVa+vzzz93satfv767zuzZs+3nn3+2fv36ubZbtGhhM2fOTNH2oUOH7Omnn7arr77axfnOO+9018nIlClT3O9Xrly5NI9R24MGDXLtqk9dunSxjz76KMUxx44dc+3rflAfH3nkEdfHjKYe10MUt956q7uu+vGXv/zF9u7d69+vWQV0nXbt2rljdK9MmzYtxWwDik+nTp2sYcOG7pjbbrvNPvjgg3Tb1cwFOkexat68uT3zzDN2/PjxFMfoPjp58qS7zwEAAAAAAAAAQOaQAAeQqyhxq4Rux44d3Xe9KymaOin84Ycfuu1PPfWUq6bV/v79+1tSUpL/GE01PXz4cOvZs6dLll944YX2+OOP+9ekDoUSoqrY/eyzz1wSVUlSJYyVBB4yZEiWxztu3DhLTk52Y3jsscds+fLl9txzz/n3K0GuPtepU8cmTZrk1o9+4403XGJVVB3ftWtX91nnaftPP/3kHghIPc5HH33UJfeVnL700ktd/xWbyy67zF566SWX5B0xYoT/QQIlae+++24XZyWe1X7FihXt3nvvTTcJnpCQYMuWLbMbb7wxzWP0eynh/Z///MddWw8sXHDBBe7Bgnfffdd/3IMPPuiSzvptFStdWw8ApGft2rUulmp/6tSpLsmuOGldec+oUaPcS/H4+9//7voyevRod594cVfi/YYbbnDx0r6CBQu6e2DPnj1B21XFu/pfpUoVmzx5srtPNBaNITCxXqhQIZcE1/EAAAAAAAAAACBz4jN5PABElapiS5Uq5RKTospnJUe1ZrIqmz2nT592yejixYu770qMKlH87bffuiptOXHihFuHWtXDcskll7jE44oVK0Jel1pVykWKFHHXbtKkidumSusffvjBrU+eVVrnXElnj5LPixcvdp+VGFciVUlYL+Htjeuf//yn/frrry4ZrCp5JW7j4uLc/muuucZVNE+YMMHGjx+fYv3pe+65x30uWrSoq+ZW0ltV51KzZk1bsmSJrVu3zm1fuHChbd682f7xj3+46nO57rrrXBW5EsJpVTArqa2+6RppmTFjhqus14MMSnyLKsF79erlEtMdOnRwlet66ff3kulqX/vSe4hBCfDChQu7hwWUtBbdU3qwQolorTH/+uuvW48ePWzgwIFuvyrc9cDEmjVr3AMPu3btclX1Sl571E9Vd+v67du3T9GmrquYXHvtte7do3tOY9I9p6p7jyrE33//fVfh7t3DAAAAAAAAAAAgY1SAA8g1lDRVxawSvlof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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "==================================================\n", - "Sweden Distribution Analysis:\n", - "==================================================\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABWMAAAMWCAYAAACUa5Q4AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzsnQd4HNXZhT91yZJs2XJvgG3A9N5rCD2hhU5oAULvEHrvJZQkEGr46SR0QiihQ+i9g42Ne+9Wb6v/ea+4q5nRqre1dN7n2UfaNnPnzt3ZnTPnni+ltra21oQQQgghhBBCCCGEEEJ0Kqmdu3ghhBBCCCGEEEIIIYQQIDFWCCGEEEIIIYQQQgghugCJsUIIIYQQQgghhBBCCNEFSIwVQgghhBBCCCGEEEKILkBirBBCCCGEEEIIIYQQQnQBEmOFEEIIIYQQQgghhBCiC5AYK4QQQgghhBBCCCGEEF2AxFghhBBCCCGEEEIIIYToAiTGCiFEN1FdXd3dTbDa2lqrqanp7maIHkoyjPH20hO2QTSO9q8QQgghhOhqJMYK0QamTJliV155pe2+++620UYb2dprr21bbrmlHXHEEfboo49aZWWlrQg8/fTTtvrqq7vbYYcdZj2Fr7/+2i688ELbeeedbYMNNnD7Z5tttrHjjjvOnn/+eSdAdicVFRV2++2329VXXx16/KOPPorvjx122KHT2/HNN9/YwQcfbHPmzAk9zljw7WCMdDQzZ86ML58b90X7CO6z4G2ttdayjTfe2Pbee2+74YYbbPbs2Qnff95558Xf87e//a3d7Zk3b56dc8459p///Kdd2xIcfx3dxpbw3nvv2V577dXgcT6fvi18bld0uvvz2N7x21ZefPFF973d2bz//vt21llnuXGz3nrr2brrrmu/+tWv7NRTT7W33nqr09cvhBBCCCGSi/TuboAQKxrPPfecE/qqqqpCjy9atMjdPvzwQ3v88cftvvvuswEDBnRbO3srd911l91yyy0NBNf58+e7Gye+zz77rBNDs7Ozu7x9n376qROpZs2aZfvss491F+eff74988wz3S5Mi853/RUVFdkPP/zgbv/617/s1ltvdRcnOovHHnvMCWelpaW2+eab24oIbT/77LPt9ddf7+6m9Go6a/zyXXDGGWe44/GIESOsM7nsssvcZyIKwjK3//73v+674JprrrHUVHkkhBBCCCF6AxJjhWgFM2bMsAsuuCA+rXH06NG26aabWk5Ojv3444/2ySefuMc5abz44oud4Ce6Dk6sb7755vh9nFXrr7++paen25dffmnfffede/zdd991r2NfdjUffPCBE2K7m6Ycr7/97W+dewtWW221LmyV6Ag23HBD59iPxWLOhc14w+GJY7+4uNi58Z588kkbO3Zs/D3bbbedDRw40P3Pe9vrNkTMbCvJMP4WL17cpBB70EEH2fLly93/w4cP78KW9XzaMn7bMruF74vOhgt/QSGWmRprrrmm+w3x8ccfu3YAF8bWWGONLnHpCiGEEEKI7kdirBCtdMV6IXbbbbd1Lsygk+XOO+90rkx444033Am93LFdx1NPPRX//8ADD7Qrrrgi9DwCOa5lL0aee+65lpaW1uXtTHboO7HiQmTKKaecEnps2rRpTughkgKh9MYbb3THK89uu+3mbsnAijD+jj322O5uQo+lLeM3WQle9CKmIDhuEJv/+Mc/uouDgMAsMVYIIYQQoneg+VBCtHJqoyc3N7fBlMJDDz3UnUhuscUWttlmm9mSJUtC+YLjx493Aq2npKTEZeL5fLyff/45/hwuIFw0PL7OOuu41wbdlcccc4xtsskmLntu1113dSenS5cuTdhuTmCZlr7VVlu51x9wwAH2zjvvNLu9rVlPMPNv8uTJznV05JFHOpcTmX8nnHCCTZw40bpq/+Tn5zd4nm1h33AjR5Y+5YQYV6BvO1NGozB91D/vBd5gvivTXcvLy53bln3N/tpll13snnvuCRXH4rnbbrstfh83FO8nCzMRjAFe75f5m9/8xh588MGE0QI4yFjfHnvs4fYV+4x9Es3I9TnBQX7961+HsiKby4x95ZVX7KijjnJjnHWRzYuwPWnSJGsv7RlH06dPt4suuijeX1tvvbVbHk5N9nMi/ve//9lJJ53kLq74bOEzzzzT5Q5HIafUt+2JJ55wbnjEFdpGX/zpT3+Kf75fe+0123///V3/0A7a1djn86WXXnLHDpaDk3vPPfd0QlNZWZl1FCuttJI7BniI6whmBTeVx8pYp4/YDvqIbWJ8X3755S4bNpoFjOPPwzqD4yi4njfffNPlJuOC5FiHWNWazGL2EeIVfUb/45j86aefWpWHmmi7+ctnItEyWpoZixOf8cDrfKY4YxeHZ1MZyhyb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uOGG9uWXX3ZRS4UQQgghhBBCCCGEEKJ1JFVm7CGHHNKi1y1YsMDlxAYhY6epaANyaLl5iouL4yG73IQQQiQf/hidjMfpZG5b0mxLU8trxbqSua+TuW09bVuSuX3J3Laeti3J3L5kbltPQX2b3Pz73/+2hx9+2NV1wTA1ZswY23///e2ggw7qsjYQY3j++efbhAkTLBkoKSmx+++/31555RWbMWOGxWIxW2WVVew3v/mNHX744ZaZmdmt7TvssMNsxIgRdt1117V5GTvssIPts88+dsopp1hH89prr9lTTz1ld9xxh7v/xhtv2O23324///yz9e/f33bZZRc77bTTLDs7Ox57ybYwa7q8vNy1jZnUAwYMaLDsadOm2V577WX/+c9/bOTIkaHxkwiMgw8++GCHbdt5551ns2bNsoceesg6G2ouXXLJJfbPf/7T0tOTSgbstayQe6GsrKzBQYv7QbE1yl133WW33XZbg8eXLVvmgtOFEEIkb1XKZJzCl8xt685t6VNZaSnVVVabUmmly5Y1fK6qymorGz7XVe3raJK5bT1tW5K5fcnctp62LcncvmRuW0/BG2pE8vHkk0/a1Vdf7YQvZrHyeXjvvffsqquusoULF9rJJ59svQ2K+CB2UsTnhBNOsPXWW889/umnn9pf/vIX++CDD+zee+/t1uPF3/72tyaLDHUnaDVXXnllXACl3xhHp556qu26665OTEVgpAjetdde615z2WWXudexXWhEFH3n9VwkCDJ58mRXhwhtKcjuu+9u22yzTegxhF2Wf/zxx3fo9vFZ6Sotas0113SGRsZbR2+H6EViLHmxUeGV+/5qSCIo8PWHP/wh9EW+3XbbWb9+/SwvL69T2yuEEKJ9DhiO1cl2YpvMbevWbeFiaW2G+8vyGjyX0chzXdW+DiaZ29bTtiWZ25fMbetp25LM7UvmtvUUklU0EmaPPvqo7bvvvrbffvvFH8MZO2/ePCem9UYxFqGQIj44O4Oaw+jRo23ddde1PfbYw9555x2nS3QXBQUFlqw88MADTsBeaaWV3H1cnbhTvZi48sor2xlnnGEXXXSRXX755bZkyRJ79tln7c4773TF3uHmm292wu0XX3zhCr97ox6vwaE8c+bM0DrRlIK60ty5c51wfuKJJ9qWW27ZoduXn59vXclRRx3lXOq///3vu3zdooeIsUOG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IURP48knn7RLL73UibHPPPOMPfXUU7b33nvbVVddZbfddpv1VjIyMhIKpD/++KNNieTow9ChQ+3dd9+N31566SU7/PDD7S9/+Yv93//9X+i1/jVvv/22Pfroo05UO+200+zxxx/vFCHqpJNOsuuuu86JoQ899JC98sordtFFFzlxCuF90aJF7rXDhg1z7aI9LYHX8Xre1xj/+c9/nBBGO2688UYnKt533322yiqr2NFHH23PPfecdSet3eauhv4rKipy4jnwuXz++efdZ/bZZ5+1HXfc0U4++eS4mLxkyRL7wx/+YKNHj3afZfb9n//8Z/d/lEceecRuvfXWhOudPHmyHXXUUVZWVtYp27VBC8ZOR5Gammpnn322nX/++VZZWdnu5aV3SKuEEEII0aspmjvNKouXmhXUPzYoKMZ+9mnoR0fG6qtban5+u9eL4ItDNlZd5e7XxmpswYTPbPgG27n7WVtuYZWf1EcXVH7yqXPppmTVOXaFEEKIZLzAWVVa1C3rzuiT36YIIcRABLn99tsv/tiYMWNs3rx5zlGH0NMb2WKLLezll1+2M888M/T4iy++aBtvvLF9EviNAmlpaTZo0KDQY7///e+daxHxDOHRE3zdkCFDnEMWkQjBdOedd7aCgsCPsgTgckUof+ONN5rdjvvvv9+Jvgi9a621Vvzx4cOHO4fqb37zG/vHP/5h55xzTsJtaIrMzMwmXz979my7+OKLnUsTZ6wHAY62pKenO4H2t7/9rVt3d9Dabe5KampqnFiKcA4Iowiw11xzjW233XZx1yxCLGIr+5P9zIWEK664wvXv2LFjncP17rvvdp9z4LONmMv7Vl555YRuWRzdCOad5VzNbGbsdDT0DetkFkDwWNcWJMYKIYQQot0smPB56H56Vo7lDhweEkHTOzCiILiewnHr2oIfP6tvy4+f14uxm21mRZxU/jK1r7ai3Ll0szbZuEPWL4QQQnQkc79+3354/h9WWbysW9afmdfP1tjjaBu6bjh3vSWusS+++MKWLVtm/fr1iz9+7LHHxsWbU045xaqqqpxA492he+21lxPwvMiI4xLxFucjwiKOUISP4uJiW3XVVe3UU0+1rbfeOr58XvfXv/7Vpk6d6qb0b7llJC++mWUgSN5xxx12wgknuL9z5syx1VZbzS688ELbaKONrL0QRYCTjinfa6yxRvxxHK84D6NibFNiHyJQcxxxxBGuD9966y3nTO6oeIKHH37Y9txzz5AQ68nOznb7zItiCG+//vWv3WOIV0xfX2+99Wzx4sXOTYu7FXft5Zdfbnl5eU7Mw/2L4Dxy5MgGy3/iiSfcX1y/iTjuuOPc+70QyxhEnEU8Zp19+/Z17WGf5uTkxNdHLMQNN9xgCxcudNPoEXwRHYE2E4VA/ALtys3Nde5QxgYCJeON/YnwjRDZ2m2GTz/91K6//nqbMGGCW4b/nAT7/d5773VRH7SR1/A5YT8A28EYOv30050QPmLECOdQ57MYhPXTJ/6zkZKS4j6DbF8Q3rd8+fJ42zbddFMnxHqIpkBgpS0DBw508RsItny2br/9dps1a1Zoea+99ppde+211r9/f9ffzbHDDjs4gfOzzz5znwsuMHD8wBEd/KwiIOO+p58Z78Gxw/Hl73//uxOb6Xv251lnnWVbbbVV3KnLPmP72KcsA4Hfj13265VXXmlffvml22fEf3B8CkafcOEBl3p7xVjFFAghhBCi3SyMiLFZfQfE/6+eNctqZs8OPZ+5cceJoYPGh0+WFk3+xrmKILV/f+fCDVL11Vcdtm4hhBCiI/numTu7TYgF1k0bWssxxxxj33//vW277bZOQMFB9/XXX1t+fr5zxgFi1Mcff2zV1dXu/nvvveeEoWDOJiIiohYgYvIapkcjviBskhHKa+Dzzz93Ai+ZqghC++yzj1tvkOaWAQiwCF4IeLwGwQ6BBjGsvSCQrbvuus4d66FfEL28QNQUZHsiQrENtL05Ro0a5dqPwNdRIDQitEWF7uh2NiUW46xFwEMspJ8Rz3isJTBmmI7OdiUCcTPojmTfMRZx/RIRwRhAnPvXv/4Veh+iHAIsjyM6Iuoxld+DqI3gythiTDK1/7LLLrMLLrjAidPz5893uatt2eYZM2a46fssnzGH0IuIGOSWW26xxx57zLURVzTtY/3EAgRdr4jObAPZvVEh1oui7Du/fxDPuRgRdE4zJj/88EPbZptt3P25c+e6yIwggwcPjn9evHiKoM2YSwQi+q677mqt4e9//7vb1+wvHOGXXHKJc5F7pk+f7vqd588444wG76cP+Cyfe+65rs/YHj7vP//8s3PyHnLIIbbSSiu5fYIgzQWaAw880EpLS937cbAjAuMQpv30Z9TVv/3229ukSZOcU7g9yBkrhBBCiHZBRuvS6T+FHsvuVxj/v/LTT0PPpWRlWvqYMR22/sJVw7mwVSXLXWxC3+F1J3+ZG2xgVT/8UN+eL8LZtkIIIYRoH4guiDc4AxEOEYgANx/ToXGZImLgTsR1xhT9999/34lcFGBCoMXFivCGeILQQc4loot3lOICxE2LC5BlIYjhXPNiCaLvxIkT44WGWrIMwE2HYzH4GsQxXJFegGoPiKiIZV48whWLgJxoSj1T8oO5o4hECNreAdgSeH1QVAyCsMjUcqDP2Xa/PiIHXnjhhQbvwQkJAwbUX2gH9lNQSG/s/TBu3Lh4VANjAiEaJ3VLYP1RFycCHWMpyD333OPGFcveZJNN4m5GHJOMFcZGEAQ7P00fsZ7xQPsPOugg9xjjwTu2iUhA5MPxipvS71eEzsZoapuJAUCoZV8wDnBwInLiJPX7HeH25ptvjo9T8lsRxRm7CJUeRN1EMQGer776yl2oaAyESsY7Fw3IfPYXAaLietYvEV8VFRXWWWy99dbxzzMxJ7T9gQcesN133z3+GiIVvAAcHH8Iq4isiNdeBOYzx0UVnmPsc4zycQ1AfAOOXy6WUMQMsRfhmosLuH45dtE/uGS90E1f8xz7EmG3rUiMFUIIIUS7WPjTVwTcxe+npKRaZl791fbKT+sjBCC1cGCb8ugao8+AwZYzYIiVLZ4Xcsd6MTaDIl6PPhp/rpofVUuXWmozWWpCCCFEV7PWPscnRUxBW2CqNzeECwRPBFlEsD/+8Y8uTqCwsNBN3UasRfhhqrCfUv/tt9+6AlB9+vRxAitTqwEnWxDEQ6adA+Ja1F2KsOjFWNyRzS3D46enezHTvy6RWMo05SDNiYoIQ0yHp08QCBFjmZ6eCMRf+gRwDeNixPXJ/y0F4clvQxTcjOwDoI9Zl19fcEp6EKaZA1PdgyBgI9oBy2gqexZhLQjt81Pim4P1R9eNiIrIDjgeEUlxifr9TVtwnDLtHBcj7t5oG7yoCrhEvZjvQfz0eFdu0AXKvkk0RlqyzaxnzTXXDAnyjHsPbUb0ZIp90O3qL1r4foemhFgvZvPZSwTucsRNREqcooiMftuiRaq8CMtntLPYLLBP/Oc56GJvanspiMf+8OPb4wVxnNI//fRTgyJrbBfxBV68RYAlA5uYBpy1ZBEH9wH7jPHiL1K0FYmxQgghhOjQiIKM3Pz4j5ba8nKr+urr0PNpAxP/IGwP5MbO/PjV+P1FP31tq2xTl6lFTEFKdrZri6fyq68s+xc3hBBCCJEskNU6ZO3NV6gCXkxpJkuS7E5EHX4DIDRxo0o7YgYZkIiSiIG4CRE6EEQRZcl6xeGG648oA8QOHxHAlGyyHYP43xgIlAi/ofb/IiZBS5bhSTTFPlFMAWKpFwFbCo5RRGrcdzgeEQ1xbiLsRkEQbY/bDhcf66DvG5vS7zNLEehasj4ESARh9lHQoch0bk8wJzgRLcm7bQxc1TiLEQf9ctiffp8GBU3GA+MQ0Y1xR3vJucUtGSUqPrNfguMiOJY8iWIA2rLNicZusD1+7OHcjIq60WV7x2pT6/JCdRDE+LPPPtuJl8QDBAV8PsfEAQTx94P7vaNJj+yToCPVg1CciET7K7osXLDeGR7EbzuOY45TXEjCsU8eNTm1fOZxMjc2VtqCMmOFEEII0Wb4sbjwpy/j9+cuHWlVQ/c3W6luilflN99abVXdlfWKYcOsbNRoSzn22A5vR+HYdUL3l0z53mqq69abkpFhGeuEn6/8XFEFQgghkhPEUByq3XFry8wVhCHyFZkGHMU7UL2QgRiLCxan7BZbbOEeY1oweZXBvFgKbQFRAYiF/kZ+KjcYP358A1cqy/a0ZBmtxYuXwVtLQOAhvxRXLP+3V8hpDBx9iK2I2h0FYicRCQhSuHsT4XNEOwNiA3CEUiSqsYsBHgqlvfPOO65oG0Ijxa5wuDL9PCquf/PNN/H/KfZErEWiAmWdAWOXsRp0nwbHLgIsYw3BPjjWEAmJKWjN+OECwpIlS0KP4RzGBUoEAsuLOqm5WEAhraCIy2cU93BjLtuO4JvAPvHO3cYuLEShfxBko8sgeoHIB44HOGCHDRsW708uIuCExamMM5/ibLhriSwg55djGscP4lM89AlO7fZGmEiMFUIIIUSbKVkwKzSVcmHxUOuz/olmw+uymqoCP4gqBw2y2u23t9QmcqvayoBxiK31U/hi1ZW2LJBjm0lUQYDKL77skMIcQgghRG+HLFEKeCGAUXQIQYwCRW+++abLf2TqMVmePkeTPEbEWy/G8hehZ+nSpfHYAYQTBEVcbAhHLI9MUBy4fvo4WZmIg0z5Z4oywgmxCJ6WLKOrIF+UNiICR2MO2goiETem6dPnFJPCBUzBKu9+bQoEp6aiBYKwf+lLIgCYzk6/M/Wf97MfKHiE67AzwJlLliqC2mmnneYci7ioEd2IfyDXldcwrhD9ETERvdnfvOb00093/RSddk/MAo5ttoU4ANy/rS041VYOPvhgKysrc8XAEAj5rFAMy4M4igjNZ+q5555z2+ILgbVWBMR9/t1338XvIySSl4vwTO4u9/1Y4jMI++67r4u74HkiExi39D+u487khRdecGOYeIl7773XXbRh7LUEoiTI9qXPKJaGAE/mLkIrhQUZu2QpI9Kzz7khSDNGVlttNSfMckGITFl/DCMnGIE3mFnM+xBko3EIrUUxBUIIIYRoM4t/rv9xB1l9B1ifwvrqq1VfhyMKMtZdt1Pakdkn3/qOWMWWz/o5/tiin76yAWPWihfxChJbMN9qZs+x9BHDO6U9QgghRG8CwYssRwoTIaaQacn0fETIqICDqEdRHi/eMYWfqceItsE8SoRdblRURzBCQKVaui9GRIElxFUEKkRYxFeKSlGMqaXL6CqY2k0mKC5Otrejih35aeiIryyX/vCPdyQ4MZkyj8iJ8EouL/mniJ8I7fQ/bsrOgnGEYMZ62Zf0I2MGhynCIsKyn75+3XXXOWGTcYjAivvzyCOPbCA8H3jggXbOOec4AZKxyLJ9NmxXjAc+A7gyGYu4NU844QQnEHsQ1cnLRVwkIoDXnHrqqS0WJz1EhRDTgOMTYRHnMPuO4liIlEGIDyH/F/crYqj/rNCP9FVnf2722WcfJ8CyDzmeMOZ8kbWWQD4sTm4uwCC8Mj7uvvvueNQD45SLFojhvI7PJPvdF6fj88PFHcYLYjnHGN4fvHhDXAdjMZgf3BZSanupLQSVn+wRrNctuWokhBCi6+Erih/OXKlsTeGC3t62rtyWLx+92eZ98378/rANtrV1DzjV/R8rK7OF++1PSFP8+YJrrm4gjHZU+ya+9LBNeac+x63fqFVt8xOvjS9j0SG/d4W7PPknn2w5v6nPPmsLGgddRzK3L5nb1tO2JZnbl8xt6yn0tHM4BEvckkz9bSwHUQjRsSCmEbuAe3LkyJHW00GE3WWXXZyY2lXO37awww47ODH2lFNOsWRmjz32cONn//33b9dxXTEFQgghhGiz8LBkStgZW7jSaLPyhWYVi63q2+9CQmxKrNYyBg0imKtT2lO4ath1u2zmZKsqK6lbd0pKAxG4spnqx0IIIYQQQqzI4IZF4CRmQLSP9957z8Vd7L333u1cksRYIYQQQnRQXiwMKXvM7MM/mH1+ZoOIgr6zZljKCScwh6hT2lOw0nhLTQ9UUq2NhWIUMiLTAiu/+tpqI5VshRBCCCGE6EngOGXWxssvv9zdTVlhicViLoOWGAME7vaizFghhBBCdEhebHa/QkvLqjCrKHX3K78OVzNN7d+/U9uTlpHpBNnFk+vXu2jS1zZkrU0TFvGqLS6y6kmTLGO11Tq1XUIIIYQQIjkgm3jChAnW26BwXTLzRguLyXUX5CaTl9xhy+uwJQkhhBCiV4ux/cesZT4lsba62qon/dSlYiwUjgtHFSye/G38/7RBgywtkg1W9VXYvSuEEEIIIYQQnYnEWCGEEEJ0SF7sgDFrx/93hbKCEQDpGZbar1+nt6twbH0boGTBTKsqLY7fz1xvvdDzVd9/3+ltEkIIIYQQQgiPxFghhBBCdEhe7IAxa8X/jy1ZEnouY/zqlpKW1untyh+2cjg31syWTp9Y34411gg9V/XDj05YFkIIIYQQQoiuQGKsEEIIITokLzan/+BGxdjMddbpknYhxPYdMTb02NLpExoVY2PLllpsztwuaZsQQgghhBBCSIwVQgghRMfkxabUJcbW1tRYbHlR6PmMdbtGjIWClVZvVIxNHTbUUgsKQs9X/fBDl7VNCCGEEEII0buRGCuEEEKIjs2LLUaIDUz9T8+wjPHju6x9/SNi7LIZkywWq3H/Ixg3iCpQbqwQQgghhBCii5AYK4QQQohWUbJgdpN5sbVRVyx5sdnZXda+fqNXC92vqSy34rnT69sTFWN//LHL2iaEEEL0VP7973/bAQccYOuvv75tsMEGtu+++9o///nPLm3D008/bauvHr4o2x3MnDnTtYPbd9+FL2B7dtttN/f8Rx995O7/7W9/i7/H39ZZZx3bZZdd7M4777TYL4VR/Tb62/jx423DDTe0gw8+2P773/926sV41n3YYYfZ5ptvbmuvvbbttNNOdvXVV9uCBQsabLvfrubgdbye9yXC98see+yR8Pkvv/zSPb/DDjtYRzJ79mx74YUXrLu5//777aqrrorff+qpp1xf8Dnbeeed7e6777aamjrTASxZssTOOuss22STTWzTTTe1yy+/3MrKyhIu+7PPPrM1Ir+LPRUVFbbnnnu6fd4ZrL766p227CjXXHON68dkIr27GyCEEEKIFYtlM+oLYkFW3wHhvNji4tDzGWvVC7VdQVZegeUMGGpli+uzYJdOm2B9h6/i/k+P/OisnjrVYqWlltqnT5e2UwghhOgpPPnkk06Uu/DCC22jjTZywt17773nRKSFCxfaySefbL2RjIwMJ5CuFfkt9OOPP9qUKVMavH7o0KGuL4OC2Ntvv+36kWUdffTR8efeffdd9xeRFgEOMfy0006zK664woniHQnrYB9++umndvzxx9sll1xiubm59tNPP9kdd9zhhPdnnnnGCgsLbdiwYa5t/fr1a9GyEe55/YABAxp9Dds+ceJE12errFL3e87z4osvxqOyOpJzzz3XRowYYb/5zW+su5g+fbrdd9999vzzz7v77ONLL73ULr74Yttiiy3s22+/df9XVlbGP2OnnnqqE18RH5cvX+4+k6WlpXb99dc3EGJPPPHEuMgfpKioyE4//XSbMKE+6qujeffddy0/P9+6AvqG/firX/3KVlppJUsG5IwVQgghRKtYOj0sxvYbtWp9XuzaV1jR/8ZZyRf17tSMNX6JKLj6arPbb6/728kUrLRa40W8Vh1nlha4Hh2LWXUn/tgUQgghejqPPvqoE+T2228/J5aNGTPGOSiPPPJIe/DBB623gmD28ssvN3gcAXHjjTdu8HhaWpoNGjQofhs5cqT9/ve/d8vxgpzHv2bIkCHOHXvOOefYoYceatddd50tXbq02bbhSmypmxRhD1H4//7v/+yoo46yVVdd1YYPH27bbbedew6x9B//+EdoGzIzM1u0bF7H63lfYwwePNjGjRvXoC8R/XksUV/2BG6//XYnInph+7HHHrO9997bDjzwQBs9erTtvvvubn94Af+LL76wjz/+2AmvXABg3CDOP/fcczZv3jz3murqarv22mvtiCOOcGJzlDfeeMM5YhH4O5NBgwZZdhfNnOvbt6/99re/df2ZLEiMFUIIIUSrWDbjp9D9gkAsQPX8aqtZkmqxsvofVxl+uiA/+EaPrvvbyRSMXr1RATklK8vSx44NPV/1g6IKhBBCJAcITDgiu+PGuttCamqqE4KWLQvHGB177LH2r3/9y/1/yimnOFdl0B3KVGUv4sFDDz3kpr4Dbr8bb7zRttlmG+eexO3p3aCeV1991U3ZZjr/IYcc4qaWB2luGQiSrM//Zer97373O+ca7AiIIpg2bZr9ECkW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7bDDDtbZ3H///XbVVVfF7z/11FO2xx572Prrr28777yz3X333VZTU18fYMmSJXbWWWfZJptsYptuuqldfvnlVlZW1uL+YbsS9Q23888/v0O3jf3KOOoKXnvtNTvxxBO7ZF2iZyMxVgghhBCNQqGrmsry0GP5w+qLd1VFHKSp+fmWYslHNKagqrTIypctjN/PGBfOja2SGCuEEEK0i912283effddd3vnnXfs6aefdmLcqaeeal9//XWHrQchbtttt7VHHnnECZsPPfSQE0q9ADplyhQniLLuxx9/3G655Ra3/tNOO63ZZSM0Ir7FEmTJT5gwwQmVfhv9bdiwYfHXIGAiBG+11VbWXUyfPt3uu+8+O+WUU9x9+ubSSy+1Qw891P1/+umn21133WV33HFH/D3so2nTpjkR9y9/+Yu9/fbbdtlll7W4f4466qgG/cI+6NOnjx155JEdun0Iv4jrXcGOO+5oRUVF9vzzz3fJ+kTPRWKsEEIIIVqcF5uR29cVxPJU/xx2zabk51syktN/kKUHio7B8kBubHokN5Yc3KCjRgghhBCtIzs72wYNGuRugwcPtlVWWcWJgDz+n//8p0PWgYNzxowZ9tvf/tZlxAMOXFygrA+effZZt34Eu7Fjx9rGG2/s2vHhhx+69yaiurrarr32WjviiCNsxIgRCV8zceJEJ/D6bfS3tLS0+Gs++OAD5wru1y9cSLQruf322+03v/lNvA2PPfaY7b333nbggQfa6NGjbffdd3fi6ZNPPume/+KLL+zjjz+266+/3tZaay3bYost7IorrrDnnnvO5s2b16L+yc3NDfXJggUL7MEHH7RLLrnE9VlHUlBQYPld+PuTvrr11ltDTmIhWovEWCGEEEK0Ki/Wn+xA9c+TGzhjkxHaHHT0QtHceqE5fUzYOVtbUmyxBQu6rH1CCCFEbyA9Pd39zWxFpBHiHe7HRCD64bb86KOPQo/vu+++tuaaa7r/99xzTycsBn+/+P+XLVuWcLmlpaX2ySef2L333uscpInAGYu42xQ4Srfbbrv4/X/961+200472brrrmvHH398g/Uj8B533HEuHmDttdd28Qu4WmHx4sXuMcTlIDfddJPb3kQgnr7wwgvOpew5++yznUs1SGpqarwtxD4goAa3DQcwfYYTtqX9EwQxFxF8n332afQ1OKdxOONe3nrrrZ2o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Mvvq2fpiUJ5Vt1vZNth/7bgIG2XQ2ELb/rQtrU//sAP0x9cm24LJiyyZIgr6FA6xtMys+P3qqWFnbO3KK9nHH3/cIJpg8ODBttVWW1l2dp3jNAru12233daGDBkSehxh98cff7TOgm3pUzi00dzY9FXCmbI1s2dZbUXyREgIIYQQQgghVlwkxgohhBBtJFYds88f/8ZqY2EX5xo7j7N19lwjYTZqkPxBubbpYetbSmr961jWJ498ZRUllZY0ebGBiAIcqzURZ+zEnBwrLy9vILRuscUWlp7edCISz2+yySbWJ1I0CzG2M/NjGxTxCuTGpq+8MuGx9U/GYlY9PZKTK4QQQgghhBBtQGKsEEII0UamvDvTls0uCj22+q/H2pq7rtasEOspXLm/rbXbaqHHypaW22f//LpTp+q3TowdFf+/dulSixUtj99f3L+/zYy4RrMys2zQoEHxWILmyMzMdIJssM/YduIKiC3oDPID21QfzVBHSk6OpUXcug2KlgkhhBAiaaAQ6L///W87/PDDbfLkyd3dHCGEaBKJsUIIIUQbWD63yH5+JyzQ9Rueb2vuumqrl0Wm7ODVBoYem/PdfJvx2WzrDoJT9hsU7wq4YqvT0mziGmuYZdRn36akplq/fv1aLEYHs2XXYFkBKO717bffWmcQ3CYomje9QQ5ukGjRMiGEEELUc95559lhhx0Wv8//q6++evw2fvx422CDDWy//fazV199tdH3tYVPP/3UFf/885//7GbW7LXXXnbuuecmvKhdUVFhe+65pz399NPNLve5556zPfbYw9Zff33bf//97b333gs9v2TJEjvrrLPcBeVNN93ULr/88lBhUs/RRx9tL774YsJ1/O1vf7MddtjBOpv777/frrrqqvj9p556Kr5tO++8s919992huKmWbht89tlnDX7DtaW/2wJjq7OWHeWaa65x/ShERyAxVgghhGglRAl8/q9vrbam/kc+UQMbHbiupaa1/quV9258yLqWlZcZevy7lydaTVU4h7WzqSorsYrli0OP5Q8dnVCUnLLKKlbRNz/02rTxp1jaOheYrXZSw4WfdJLZuefW/W3kBzWO2iDTpk2z5cvrnbgdRd7QsDO2qmS5VRYvi99PX1lirBBCCNEedtttN1fck9s777zjRDO+60899VT7+uuvO2w9CLpk0D/yyCNO2HzooYec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M5aIiKg3NDY2aosXL9bGjBmjrV27VrW53W7twgsv1H75y19qOTk52nPPPadNmTJFO3jwoJov06lTp2r/+te/tOzsbO2uu+7SLrjgAvW8riDrufLKK7Vbb71VrX/Dhg3aWWedpT3yyCO93rfO+Mc//qHdfvvtWklJScuturpaq6+v10455RS1X7IvDz74oDZ37lzVLjIzM7XJkydr77//vpaVlaVdd9112m233Ra05/2zzz7TZsyYoS1btkz1/bzzztPuv//+oDjvgfYt2M697Odpp52mjtGaNWu0efPmaS+++GJQnvcHHnhArX/Hjh3aF198oU2bNk1bunRpUJz3jvrW1867bPOGG27Q9uzZo7399tvaxIkT1TqD7bzLOmRds2fP1q655hrtoYceUn1dsGBBr5/3jrZNREREoYHBWCIi6hV79+7VLrroIvXF0/dL+urVq9UXXW+AQMgX/Keeekrdf/LJJ1WQwMtut6svs97nB0q+AEt/SktLW9qWLFmiAg+93bfOkC/1f/vb3/za33nnHW3hwoUtAQSZShDqvffeU4/vvvtu7d57721ZvqioSMvIyNAKCgqC8rxLUMW7rJCAkQSWZLnePu+B9i3Yzr0E5LzLig8++EAFsoLtvMs6J02apPv39/e//123vt4678fTt7503vPz89VxLCwsbJl/3333aT/60Y+C7rzLtmVZ3/Mu277zzjt7/bx3tG0iIiIKDSxTQEREvWL9+vXq0tC33npL156ZmYnx48fDZrO1tM2YMQNbt25tmS+Xd3pFRERgwoQJLfMDlZSUhBdffBGJiYm69rq6ul7vW2fk5uZi+PDhfu3SV+m7wWBQj2U6ffr0dvdl0KBBGDx4sGoPtvPucrmwfft23Xy5xNfhcGD37t29et67om/BdO7lkv5Dhw5h1qxZLfNlXQcPHkRJSUlQnXe5OZ1Odam477plnd7L63vrvB9P3/rSeZdlZPnU1FTd/C1btgTdeZfp2LFjdedd5ufn5/f6ee9o20RERBQazL3dASIi6p+uueaaNttLS0sxcOBAXVtCQgKKi4uPa36gYmJiVK0/L/mC/Nprr6k6ib3dtxMlV8Ds379f1Rx8/vnnVaBg0aJFqn6k9HXUqFF+fd27d6+6LwGW7tiX7jjvNTU1qg6j73yz2YzY2Njj7m93nfeu6FswnXt5rvCd7w1oyfzWz+vN8240GhEXFweLxaLrqzynqqoK8fHxvXbej6dvfem8t3cspFaq1EdtrTePraxbgsy+512OtwRj586d2+t9C6bPECIiIuoeDMYSEVFQkS/vvl9UhTyWAWCOZ35Xe+yxx9SgN++++64alCWY+taRoqKilj49+eSTOHDgAB566CE0NjZ22FdZpif3JZDzLn31Pu6q/nbVee+OvvXmuW9rf7z3O7M/3XneJTDZ1rxj9bWnzntn+hbM5/1E3/t687y3te5ly5apgOjPf/7zXj3vwfYZQkRERN2DwVgiIgoqVqtVZQj5ki+i4eHhLfNbfzGVx5Lh1tUkMPPKK6/giSeewJgxY4Kqb8djyJAhavTyAQMGqEuSZdRwyfy7++671WjobfW1o32RS3K7QyDHVuZ5H3dFf7vyvHd133r73PsGjlrvW2f2pzuPrWSFtjVPeNffW+f9RPsW7Oe9vee2ty+9eWxbb1vO+6pVq5CSktLr572jbRMREVFoYM1YIiIKKsnJySgrK9O1yWPvpZvtzZfaj13pwQcfxL///W/1Rf2cc84Jqr6dCLk81lsjUqSnp6sMMOlTMO1LIMdW9lGCGL7zpS6jBDVOtL9dfd67sm/BcO5lnvBetu57vzP7053HVp5bWVmp2nz7KoGt1j+Q9PR5P5G+9YXzfqLvF715bH3X7T3vZ511ljpOwdS3trZNREREoYHBWCIiCipTpkzBzp07Wy73FJs2bVLt3vny2Esu65TLir3zu8IzzzyDN998E48//jjOP//8oOrbiVixYoUaPEf64ZWVlaUCBt7BdeSyWSHTzZs3t7svMniP3LprXwI5tlKHcdKkSbr5MuCN1GqUgXp687x3Vd+C5dxLsEjqbfrOl/vS1pmAUXceW8kKlfu+gx/JsvIceW5vnvfj7VtfOe8ySJUM5uVb21TmS3tbevPYerctZRy8511qvfpuu7f71t62iYiIKERoREREvWzMmDHa2rVr1X2n06mdd9552s9+9jMtOztbe/7557WpU6dqBw8eVPMLCwu1SZMmqXaZf9ddd2kXXnih5na7u6QvOTk52rhx47QnnnhCKykp0d16u28nqra2Vjv11FO1X/ziF1pubq62fPlybd68edo///lPNW/OnDnagw8+qO3du1dNTznlFK2+vl49d/PmzdqECRO0t99+W8vKytKuu+467fbbbw/a8/7xxx9r06dP17788kstMzNTO//889U+BcN5D7RvwXbuZT9lXXLu5Cb3X3rppaA877/73e9Um8yTZWTZzz//PCjOe0d962vn/eabb1bPkefKOuTYyL4F23mXbZ955plaRkaGWu7xxx/XpkyZom3fvr3Xz3tH2yYiIqLQwGAsERH1Ot8v6SIvL0+79tprtYkTJ6ovratWrdItLwGGs88+W5s8ebJ2ww03aAUFBV3WF/nyK/1p69bbfesM+UJ/4403qi/0Enh5+umnW4IGEgy45JJLVGDhiiuu0Hbu3Kl77nvvvaeddtpp6rmLFy/WKioqgvq8y7k7+eSTtRkzZmi/+c1vtMbGxqA574H0LdjOvQSM/vSnP2kzZ87UZs+erT322GMn9INDT553u92u3XPPPWo/JHj473//O2jOe0d962vnvaysTAVvZd0LFy7UlixZErTn/ZFHHgna897RtomIiKjvM8h/ejs7l4iIiIiIiIiIiCjUsWYsERERERERERERUQ9gMJaIiIiIiIiIiIioBzAYS0RERERERERERNQDGIwlIiIiIiIiIiIi6gEMxhIRERERERERERH1AAZjiYiIiIiIiIiIiHoAg7FEREREREREREREPYDBWCIiIiIiIiIiIqIewGAsEREdl7PPPhsZGRn461//ir5u3bp1al+eeOKJDpdduHChWpb8HThwADNmzMCOHTvU46efflodq9WrV6M/+cEPfqD22+l0nvBzly1bhvnz56OmpqZb+kZERERERMGFwVgiIurQ+vXrkZ+fD5vNhv/9739obm7u7S5REPi///s/FaSfOHFib3elz5Jg/8iRI/HnP/+5t7tCREREREQ9gMFYIiLq0HvvvQeTyYRbbrkF5eXl+PLLL3u7S9TLPvroI2zYsAE/+clPersrfd4vfvEL9SOHHE8iIiIiIgptDMYSEdEx1dXV4fPPP8ekSZNw8cUXq7Y333yzt7tFvUjTNLzwwgtYsGABBg8e3Nvd6fMmT56s/n09//zzvd0VIiIiIiLqZgzGEhHRMX366adoaGjAKaecgqFDh6rAkZQtyM3N9aubuWjRIuzZswe33XabqiU6bdo03HjjjcjMzPS7NFuybCUT8LrrrlPLyfKLFy/Gvn37dMtKLc7vf//7fv2Seq8yT+q/ekn5hBdffBGXX365WqdcPn/66aery+klo7er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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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mR166KH27bffhpYXFBTYJ5984j4UNv373//usG1cVnS2fV1UVGR33nmnPfbYY/bGG29Ybm5um6+zqqrKnnrqKbvtttvszDPPtGHDhrX5OtE8kUjEXZQp7NXHK6+8Yg899JANGjSoVS+4X331Vbvxxhttr732shNPPNE6Mw2+ufnmm+2ll16y8ePHd/TmAAAAAADa2Q8//GAvvviiu38zY8YM69Wrl6255pp2yimn2AorrNDoz+s6+z//+Y99//339uOPP7rB5ldddZXtvffeocfp+f/xj3/EfQ7dV1lrrbXiXsdvvPHGrsjiqKOOanA7pk+fbiUlJbbKKqtYR+8jDYq/5ZZb3LX2okWL3OByPXaTTTZp8n4TFcu88MIL9W7fRx99ZAMGDGjy65o8ebK7L6Kfnzt3ruXk5Ljiln/9618u0I6933H77bfbhhtuaOuuu27oe7///rv7/korrdTkbQAAdE8E4EAzPPnkk9FAds8997SDDz7Y8vLy3Juxyy+/3GbNmuUes9tuu9V5w4auva+vueaadq9WVYh66aWXxv3ehx9+6D6np6e36zah7nHQhZguQHWhqnPyzTfftClTpthpp51mTzzxRPSxukDV45rryy+/tNNPP73JP6dR6v58aY+BG54GbXzxxRd1lu+0007uJoPodxoAAAAAWqq0tNR22WUXN3BcoVswXFRnua+++soNqNc1yJAhQ1z3rr/97W+WkZFhnY26h+laSt3w6rsn0BTBcFjFBP369bP2ct9999k333xjO+64owtq582b5woLFMQqmG4sUC4sLHTB6ODBg93Px7vGjN13Y8aMCS0bPnx43Mfq3NDzb7nllo2+jokTJ7rPLe3o1hr7SIG17jvomC6//PIuvD766KPdee/vjzVlv+k8U7fFIN3nuOSSS9zvSnPC72effdYuu+wyF+brd03PM3XqVHv66aftgw8+sHvvvdc22GCD6OMnTZrkOtatuOKKdZ7rt99+c5+7egCuAp7HH388od9r/T276aabXPdLP8jh1FNPjd5L8d5++237v//7P7f/+vfvbwcccIA7F4J++ukn22effezYY491z9EZ/kZUVla6c1zniQaX9O3b1zbffHM3kCN4nyiR19fUfRzvMfr9O/DAA+3888+vdyANgK6FABxohv/973/Rf19wwQXWo0cP9+/lllvO/eet/6jl888/JwBfxva13vy3t4bWOXDgwHbdFjR+HHRu6mJEI8c1wllvoD/99NPoKOw+ffp0yDmoQRKd6XzJyspyHwAAAADQWu666y43KPm8886LLlPwfe2111p1dbUlJSW5ME6VsPPnz3eVserupiAuMzPTOpPevXu70HFZGDCszn7XX399aPD+zjvv7IoZ7rnnHve9hij08oGcKpk1aKEhuj+kIDkRGiiuYHbllVdu9LEqxkhNTY0b0LbnPlJor85wZ511lqtc90Uju+66q3ucBuU3db9p0Lw+gjRgRCGstqGpXn75ZXcfT8dBv3/B16XQUYG4fk/feustS0lJcct//vln91lTH8YLwDWYvzU77MUqLy9v08EwOmYazJCoE044wR2/5ORk9/dJx133mnQ++HtMuh+qzoC6V6R7pvr7d8MNN7jvBUNiFVNIcMBBR1PwrMEQ0rNnT7ftCqW1rSo+0jmT6Otryj6u7zGa0lDnngYdbL/99p3qHhqA5mEOcKAZgm/a9Gbzl19+iX6t/yD1n7M+/JtQP+ev3ogGqX2xlus/V7UlCj6nluuNp1qAy5w5c9wItE033dRGjx7t5uu9+uqr3QjAWLqAO/zww93Pr7feenbuuee6UZ/10eP1pkEXCGussYZ7E/rII4+4NlBBfq7gk046yf7880/Xrmjs2LFuPRpBqJF4Hb2vtW1+XmFtY5AuAPz39GYneGw0olb7WOvQm0G1mdJoP725DL7+YDuobbbZpt55k19//XW3HzXiWI+544473MV2kI6dWk/p+zqmm222mV144YVuO4IjenX8PP1b26uRkQ3NAa7n1pxUO+ywg9sGBbL//Oc/oxXAzeHXpSp4nTN6Ph17ta4644wzXCurWHqjrmOj81D7VNujC59456OOo84jbav2x7bbbmtXXnmluykRpNHAflsWLFjgOgHojb9amemCUfNia750jTJW2yxto7Z1woQJcS/IdAGobdO5rGOu0Lo1/P3vf4/++/333290DnCNftZ2an+uttpqbp/pOd59993Qaw+OQlVbfD2PRumKf179bdCHXrvewOvcT2SeerVtP+yww9z+0L7T+Rd7XOubMzzenN6xI8yD52pDc4BrnTr2+h3X+avfSZ0b8UarN/W81PmhgTP6W6q/vTpv9Luq0faxf/MAAAAAdB26Dta9jPz8/Oj1igYj69pI1+O6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NtvY008/Hf2eWmEfdNBB7jXuscce9mMTBtl9//33duyxx9qGG25oa621lu2888720EMPuakEEtGUdWsdweOhY5ro8QUAAAAAAJ1oDvAvvvjCXcifeuqp7oZCQzcexo4dG21lps/rrLOOfffdd+5mGAAAAICmq4lErGbRojZfT1LPnpaUnNj4WwXdl112mRv0qsBRvvnmGzcYNi0tzXbaaSdrD99++611pDvvvNN22WUXy8zMtLvuustNCfXKK69Yenq6nX322Xbttde6/fTII4+466U333zTFi5caIcddpittNJKLvCWP/74w11vzZgxo97Xp+/tv//+rjOXqNuWAmUFrlpfe9I1nrbXB/ze1VdfbYWFhfbBBx+4zwcccICbHkvXkyeccIIbWP3ggw+6MFyDJzRwWteQei6dMwqudW4df/zx9s477zT6unStqv1w8skn24033ugeP378eDvvvPPcgIQjjzyy0deS6LrnzJljVVVVcc+5xo4vAAAAAADoZAG4RsMnYt68ee4iP6hv374Ntk3XvOL68IqLi91njdZPdMQ+AMTyf0Pa++9IR6233bYt3s828nwdsU+W+ePAeltFd9onnfk4dISuth/KPvrYiu+80yJFRW2+ruRevSz3uOMsc/PNGnycgsUrr7zShYx77rlnqDpWAeiiv8J6TYWkiuj//e9/Nn/+fHetcNVVV7nq61tvvdVVEE+ZMsV+++03VzGsn+3Tp4/7nq4tJk2a5Kpx11hjDRdSXnrppe7xChWvu+46N+BWz/Xuu+9Gr1v22msve/LJJy0rK8sFmfvuu6/73jPPPOOeV1M7KUQO+vTTT11QrYB59OjRbj3Dhw930zq9+OKLLsjVa1JnKz1v8NpFz/v222+7r0tLS+24445zr0H22Wcfu+mmm9y///vf/9oRRxxhvXr1ch9///vf7aWXXnKvReG3wuDTTz/dzjnnnHr3+0UXXWQHH3yw20bR8+j1v/rqq+51N8W4ceNcpfZ7773nvlbVuaqyJ0yYYF999ZUdddRRdX5mt912c/vmk08+cduicFlfe7qu02vS9qgTmD4ee+wx69mzp9uHyy23nAuGk5OTbdVVV7X111/fhcZ6Heo2pv2TkpLi9ptC8s8//9y22GKLBl+Hzi/93KGHHhpdNmbMGHcu+UpuDUy4++676/zsv//9b1t99dUTXvev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W+rKK1vWHrtbSn5+R282AKCFVKE9ZcoUW2655aLLXnvtNcvOzm7xcxcVFVlOTo61h4kTJ7qQ+7TTTrNp06bZ2WefbXfeeaetu+669t///tf+9a9/2bvvvmulpaV2xhln2O233+5C4Msuu8wuvvjiaKhdXl5u119/vT3yyCN2wgknRJ+/vuWrrrqq+/zJJ5/Ypptuah1x/K699lrr0aNHQt+rrq52++rjjz+2vLy8JlXzH3fccVZcXGw33XSTe90aOKCA/ZBDDrE33njDcnNzG3wODUrQ45999llLT0+3o48+2h577DH387E0sEDH6dBDD437PQ122G677RLefgAAAAAA0PqoAAcAdFpVFWX23eM32MS3n7SqsiVWVVZiC6dOsGmfvm6fX3SYFXzwhlllpUUKC63i+++t5NlnreiMMy2yeHFHbzoAdBk1kRorLy5v8w+tpym23XZbF156hYWFrqJ39dVXjy6bM2eOnXTSSa7SdptttrH777/fBaIyefJkO/LII134q2pcH5I+9dRT9sorr9jdd99tl156qS1ZssRVC6+//vquIllVvP45vvvuOzvggANs7Nixtscee7gw2bv55pttk002cR8KnhWqx3PffffZnnvu6f49a9Ys22+//dy6kpOTbffdd49u69tvv+3Wo9eSkZHhqrdVNa5tlsMPP9wWL15s22+/fej561su++yzj3udzaF9MW7cuOjXCoN95b0q2IMV0P7D0/47//zz3fpj1fc9Hds+ffo0Kfz24fVPP/3kXqcP/fU8xxxzjP3jH/9w543E2169DtFABB3nwYMHW35+vvvZl156Ke76FHKrC0F93/PbAAAAAAAAOg4V4ACATilSVWlf3H2RLZ75Z2h5TXm5Vc2YoVIx+zOj2lat7GMpge9Xz5lji2+/w/LOObvdtxkAuprp382y71/4xcoWl7f5ujJ7ZNiae61mQ9calNDjd955Z7vuuutcGClvvfWWC3kVdnoKnkeNGmUffvihC5ePOuoo6927t2uffuGFF7qW1mptrRBUAa4POr/99lsbMmSIC74VUCuM/vTTT93j9t9/fxf+rrDCCi5c1vPstttu9tlnn7nHv/DCC7Zo0SL3XKpIz8zMdCH8448/7qq5Y1tzK8Q/66yz3NcKvvXhKWBX5ffyyy9vL774oq244orR7+l1qHJZVfAK/VXd3L9/fzvnnHNC66hvuV/fySef7CquFe62lldffbXB72tfKEjeaqut3HFL5HsKj3UcNEBAlfIaDKB9P2DAgAbXpUECeq5evXrV+Z4quT0d8/r8+eefboCDp2OvZbFUpf7777/bgw8+6AYo6HWosn/LLbe0uXPnukEQV155pVvX8OHD7bzzznPV/AAAAAAAoH1RAQ4A6JSKpk6oG37X1Fj1rNku/JbS5EqbnlG32rv8ww+t7P33221bAaCr+uaZH9sl/BatR+tL1IYbbugqvBUA+9BVobin5b/88oude+65LoRWaKmKb1+5q0ruI444wsrKytzzKCCdP39+nfWoDffPP/9sr7/+umt/rXbkmgf6/ffft1VWWcWF6ampqbb55pu7oFWht9qna95nzSOu4FMtzWPDb/nxxx9dNbI+Ymn7FagroFbQrSBcryMoKyvLLReF3PHUt1y03apIDs4z3tYUXj/00EN2wQUXNOl7mnNb82ersl5V3aoEV6vxxmj/B0Pyr776yrWX14fC5zvuuKPR54jd99rvOm9iKeBeY4017KCDDnLztZ966qnuQ2G5Bk9owIFC948++sj23XdfN3jDV6ADAAAAAID2QwU4AKDTKS9eaKWFCimWjy5Lzcyx5bKG2dTfplhJYPjWvJxKG7r7Ppb+/JtWs6S2TayoCjxt9GhL6devvTcfANAKUlJS3FzKCqbVLltBpwJST/M8q0paYaWnKufZs2e7f6tSV2GkQktViatNuG9tHqSgcuHCha5SXFXUCrpVxavnj62a9s8/YsQIV53+wAMP2A033GArrbSSXXHFFTZ69OjQ4xW894vz/9APP/zgwlEFqQrp6wtdFcy2dK5yrV/bEaSKcN/+W+69914XGMcK7i8F1J4q4lVxH+uLL75wAxI0z3lsK3P9fH3fE7WD9y3hReG3BkGoBXxDc3j37dvX5s2bF/1ar0MhuOh4qmrbL481aNAg1w5f4bfmUg/u93hzzWtdmmvd04AItaxXa3y1W1e4HzyvHn74Yfvmm29ce34AAAAAANB+CMABAB2n12izykVmaT2ji6pXHWmzp/1kZf2WLkvL7mFjdz/eys+/1EZEetvPWfMsklRjSRmZZgMH2qQ5P9nYE/5li6+5NvozNUuW2JLHHreep5zc7i8LALqKdfYd0+4t0JtCFd+q5FaV9g477BD63sCBA111bUlJ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5CTLWH/90PKKzwnAAQAAAAAAAABYlhGAAwA6VMWSRaGv07JzLSU1zSILCkLL09dZp97n6L9aOOiuKltiBX/+bBkxbdArfvjBIovC6wMAAAAAAAAAAMsOAnAAQKcKwDN69raaSKRO+/OGAvDMvL7Wc+hKoWVzfhpn6WPXsaS09KULIxEr/9+41tp0AEAbmD59uo0cOdL22muvOt97/vnn3ff0Wc455xwbPXq0rb322tGPfffd1z7/q+PHuHHjbNVVV41+b6211rI999zTXn311Vbb3u+//96OPfZY23DDDd3z77zzzvbQQw9ZTU2N+/7LL79sRx55ZKPPc9ddd9lFF11U7/c/+ugj++c//2kbbLCBey177723e+72pPXOnDmzWcezNZSVldkhhxziPldWVtrll19um2yyidsnZ555pi1evNg9LhKJ2BVXXOGWb7TRRnbPPffUea6ioiLbeuut3fY1tvyaa66xDz/80DrKtGnTbN111437Pe2LHXbYIfo7EfTDDz/Y9ttvH1r26KOP1vmdWRDTdaetzkH9ruj3T78nBx10kE2dOjXu44qLi23UqFGhbXzggQeir/f00093+2OLLbawF154IeH1AwAAAAC6j9SO3gAAQPcVqaq0qrISxdvRZRk9+ljN/EIXgkclJ1vamms0+FwDRm9oi6ZPjH5d8McPlpSVZenrjrXyQOvzyu++s6ztt2vtlwIAXZb+3laW1AaHbUnTWyQlJz7+VkHrlClTbLnllosue+211yw7Ozv0uGOOOcZOPPFE92+Fzo8//rj961//svfee88tGzx4cPTf1dXV9sEHH9gZZ5xhGRkZtu2229a7/ltvvdV99s8dzxdffOHWf/LJJ9uNN95o6enpNn78eDvvvPNcQKvge/fdd3cfjVGIXh+FjJdddpmdf/75LmCXb775xs466yxLS0uznXbaydrDt99+ax3pzjvvtF122cUyMzPdgIFffvnFXnnlFbffzz77bLv22mvdfnrkkUdc2Prmm2/awoUL7bDDDrOVVlrJBdvyxx9/2KmnnmozZswIPX99y3WMFbwrTNe62tN3333ntsmH+7FuuOGGuEGyznPtk5ycnNDyX3/91Z3/hx56aJO2o6XnYHl5uR1//PFu0IpCeQ1KOOWUU+IG9xMmTLCVV145briu37PS0lL7+OOPbeLEie53TGG5BroAAAAAAOARgAMAOkxR8libUfinRSIp7uvk1HRLO+KfVv7qG1ZeUhp9XNrIkZacm9vgc+WvvKb9/saj0a9LFsy2skUFrnI8GIBX/PijC0iSkpLa5DUBQFcy+4fPbPwr/7GK4oVtvq703DwbtdsRNnCN8PQU9VE4/cYbb7jwUQoLC23SpEm2+uqr1/sz+tuuyvFLL720TmWvpKSk2DbbbGNHHXWU3XHHHQ0G4IlQBfIRRxwRChPHjBljV199tf3444/uawV8qlJVKKtQXcG+tu2nn35yldEKbYcPH+6+p+BVPxukIP3KK690obqqZz1VnOuxi/6a2qOkpMRtz//+9z+bP3++C3yvuuoqtw49t6qINaDgt99+s/XWW8/9bJ8+fdz35s2b5/attnmNNdZwgav2oR6v0Pi6665z+1bP9e6777r1qYJX+/rJJ5+0rKwsF26q+l6eeeYZ97wKPffff//Q6/n000/da9ZrVSWy1qPXr/304osvuuOs16Rjr+cNVgXred9++233tULQ4447zr0G2Weffeymm25y//7vf//rjkuvXr3cx9///nd76aWX3GtRyK0qZlURK4z16lsueg69dnUOiNeZoCHqQnDuuedGB2Ho2OscVMj71VdfuXMx1m677eb2yyeffOK6Aijk1dfxBmAo6FeFdNDTTz/tuhDo55544ok6AbgGETRFouegtlUDEmLde++9tmTJErcfd911V7dMx07bqBBb52rsNtYXaOvY3n333e7c0O+ank9BOQE4AAAAACCIFugAgA4za062zV00xOYXD3Rf915hNUvZZTdT9F3Rr1/0cekxN3bj6TFwOUvNDFcFFk4ab2ljRoeWRebPt8icOa32GgCgK/v5hbvaJfwWrUfrS5SqTF9//fXo12+99ZarHG1oAJNC0QcffNCFoiNGjKj3cZtuuqmrHlZoHEutlfWhClV96N8KJGMpwFWIGQwEPYX0BxxwQNx1q4pdFbifffaZ5eXluXCwsaprhYfxQsuNN97YdtxxR/fv//znP1ZQUOBC2i+//NJWWGEFFxR6Wq6QWgF5jx497OKLL45+T6GlQl9tk8JwhcAKsLWtqrRViBtrzpw5LhhVSKtKXoXtCrx//vln9+/bbrvN3n//fRdwegrhTzrpJLcutalXC2ttk1qWiwJhtS7XtgbDb1HwrXDeVzQrpN9ss81CFc+r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7WrRzD+j//599upW1O8kqxlzmVX9OcktW7LKKrZ4tdUtcvY5zV5HUnKy9RwS0wZ9xkRLGTrUkrKyQsurqAIHAHRzmiZk5syZHb0ZAAAAAAAArYIAHADQbmoiEVs0szbolvKqLMsetp5VF9RYTXmZWxbJzLRIVpalbbRhi9aVN3SlOhXgCsZTV4ppg8484ADQqUyfPt1Gjhxpe+21V53vPf/88+57+iznnHOOjR492tZee+3ox7777muff/65+/64ceNs1VVXjX5vrbXWsj333NNeffXVVtve77//3o499ljbcMMN3fPvvPPO9tBDD7lQWV5++WU78sgjG32eu+66yy666KIW7Y/muuaaa+y5556z9nLjjTfae++95/79zjvv2C677GLrrLOO7b333vb1119HH/fBBx/YDjvs4Par9nFBQUGd57r88svt1ltvbXT5r7/+aqeffrp1FJ0P//rXv+o9VjfffLMdcsghdZZXVFTY3/72N3cue8XFxTZq1KjQef/AAw8ktB1z5861Cy64wDbffHO3X7fYYgu3r/SciSgrK3P7cd1113U/+8ILL9T72JNOOsnWWGON6Dbq+Hr6t9bvv3f88ccntH4AAAAAABJBAA4AaDclBXOsurw0tKznkBWtauIfoWXJ+fmW3Lt3i9bVM2Ye8EUz/nQ3n9NGrhJaTgU4AHROqkieMmVKaNlrr71m2dnhKS6OOeYY+/bbb93HN9984wJuBY2FhYXu+4MHD45+X+HqiSee6AJABa8NUXgaL1gN+uKLL+zQQw914bcC3a+++sqFyc8++6z95z//cY/Zfffd7b777mv09SrgvfTSS1u8P5qjqKjI2svEiRPdcdh6661t2rRpdvbZZ9vFF1/s9p32pY6dwth58+bZGWec4faJwt/8/Hz3OK+8vNyuuOIKe+SRR0LPX99yDYSQTz75xNrbokWL7NRTT7V333037vd//PHHuOfInDlz3OAJfT9owoQJtvLKK0fPa30cdthhjW6HBhDss88+Vl1d7QY86OceffRRt69PO+20hAcvlJaW2scff2y33XabXX311W5wQTxa/uSTT0a30Yf/Wr/Ogw8//DD6vdtvvz2h9QMAAAAAkAgCcABAu1kcqP6WtJyeltGzj1X9EQ7AU0eEw+vWqACvKltiJQtmWerKdSvAfZUeAHRH+huo0LCtP5r6t3bbbbe1N954I/q1Au1JkybZ6quvXu/PJCUluUrpkpISVzkdKyUlxbbZZhs76qij7I477rCWUuXsEUcc4YJbBdGpqak2ZswYFwrm5ua6xyj085W9CtTPPfdc97WqXg844ACbOnVq9HuqaG/J/lBgqqrbDTbYwL3O+++/P7rfJ0+e7MLUTTfd1K37uOOOc0HzU089Za+88ordfffdLmxesmSJGySw/vrru5Bagb5/ju+++85t89ixY22PPfYIhcmqYN5kk03cxwknnFBvqK6gV4MUZNasWbbffvu5dSUnJ7vBAn5b3377bbcevZaMjAxXdaxBBr5S+fDDD7fFixfb9ttvH3r++paLwl+9zubQvghWYesY+kBXFezBamz/4en1Dho0KLQsWOGtARnar0F6DTqXN9tsMzeIIzZY9oF+U+icX2GFFeyqq66yfv36ud+XYcOGua9XWWUVq6ysdAMR4r0W353gv//9rzt3srKy3Lm+6667ui4HsXQeadDGSiuF34+Jzts+ffpYXl5ek18DAAAAAACJSE3oUQAAtIJg+3MZPMQsafbbVjPr/eiytIIFlllSYvbhh2ZbbNHsdWXm9bX03DyrKF64dP3T/7T+q4QD8JrixRaZPdtSBg1q9roAoKtSSKwW3gqo25pCzDXXXNOGDh2a0OPVSvy6665zFd7y1ltvuVDzp59+qvdnVJn64IMPunBtxIgRdSpnPYXA//d//+eC8tgKarV2Fr9P1M5c4aVC4qAZM2a4Stx4QbpC6fqCelVtP/zwwy5wPOWUU+zee++1yy67rFX2h4JntcZWZa3CZQX9vXv3dkHqhRdeaBtvvLHdc889LjxXgKswU8GrKnCHDBnigm8F1AqjP/30U/e4/fff34W/Ck4VLut5dtttN/vss8/c49UCWxXOei69tszMTBfCP/74466aOzbsVYh/1llnua8VfOvDU8CuY7j88svbiy++aCuuuGL0e3odGlSgKnjt25tuusn69+9fZ9BAfcv9+k4++WQXzMaGyi3RWEt9VUFrm+K1ONfAga222sqGDx/uzidP+1HPq9f9xBNPhH5Gj9MgAbWH1zmsAF4V3Onp6Q1uhwYQ6ByJpd8BVdv781/nQzwLFy60BQsWhI6Lzot4VfW//fabe16dg9peBfY6d/R7qQBf55gGP6gLgAY66HsDBgxocPsBAAAAAEgUFeAA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jAqLlKeb5f0VRn/5pdmCBWatWA0e2wLdaiJWMn+2ZSwfrgDXnOQ1NTW1QTwAYJlWXV1t119/vb366qtWWVlpu+yyi5199tmWlpbW0ZsGAAAAAACAFqAFOgCg3QNwiW2BnrJcuBq7NaVmZFlGzz51qsBThtZui1dTVmYRhe8AgA619dZb27hx49y/zznnHBs9erStvfba0Y99993XPv/8c/f9559/3g455JAmr+ORRx5x6zjttNPs0EMPtW+++cb+85//uO8pEL/88sttk002sQ022MDOPPNMVyXekAceeMBta9BJJ51ka6yxRnS7995779D3//a3v1lBQUGDr7+13Hjjjfbee++5f7/zzjsu8F9nnXXcNn399dfRx33wwQe2ww472FprrWXHHnts3O3Tvrn11lujX1900UWh46PXPHLkSJszZ479+uuvdvrpp7fqawEAAAAAAGgIATgAoE0Vz40JwAcMt5pIxKqnhAPw1OViqrRbWU7+4NDXS+bNcHOOJ2VkhpZXT5/eptsBAGi6Y445xr799lv3oaB6zz33tH/9619WWFjY7Of83//+Z/vss48NGjTI+vXrZ+eff74t/1dnEAXhv/zyi73yyiv27rvvWklJiV177bX1VpLfc889cb+v8PfJJ5+MbrvCem/evHmWnJxsffqEB2i1hYkTJ7qQW8H6tGnTXKX7xRdfbF999ZUL/7Uvi4uL3TadccYZdumll7oAPj8/3z3OKy8vtyuuuMINHgjS4/1r1McWW2xhRxxxhA0YMMBWXXVV95hPPvmkzV8nAAAAAACAEIADANqM2onXqQAfMMyqZ822msqK0PLUNqwAl+yYALxk/ixLSk62lCHh5dUzZrbpdgAAWkbTVOy1114ulNb83Q1RwKuK5Hj69u3rQvBIJOK+Hjt2rO24447u36WlpXbccce5cDo3N9cF5d99913c51GYrHBZVelBS5YssZkzZ9pKK60U9+c++ugj22yzzdy/9dy7776721ZVUytU9z788ENXKb7eeuu5anS1bRdVYJ944onRx2mbVdGtqutY9913nxs0ILNmzbL99tvP1l9/fRfAa70yefJke/vtt91+0HoyMjJc5baqxhWOy+GHH+4q4bfffvt697layv/555926qmnRpdp/9199931/gwAAAAAAEBrIgAHALSZiiULrbJkcd0AfOqU0LKk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/a6leFOoFfmBBx5okydPdu3DNbf2Bhts4DqXaI7uL7/80j799FPXEv2mm25y83wrcNf832rlLppjW8G1vq/tePvtt+37779331NgrgBbwbhC5Geeecb9f+hfm55rs802c+uN1/5ctC0LFy50leN+gJmCf7U+D4bfom1Xm/UXX3zRbcudd97pAnuF/C2h/TRgQO2AOAAAAAAAgLZGAA4AXdRP//3VpnyxtGK6PiWFpfbJPV9YRUlFu2xXaUG40jurzwDXqjVeBXjltxdbxbhTbETJE9Hlqz77rI15+GH3OeiXX36xSZMmtco2KkyINw94iuYwjalQow06AHR+3333nQuUgx9q8f3VV1/Z2muvHfdnzjjjDBs0aJD7rDbmCokvvLDxanZVb++yyy7u38svv7ydeeaZ9s9//tNVdKuS+7rrrnPfU+CrUFtt1TfaaCPXAvzSSy91wbLm/FYA7918883u/7n111/ftTTX430HlEMPPdTN0b3xxhvbu+++azvuuKNrm+5pW3777bfoNsVShblCdj2/vPrqq67C/JZbbnH7xn/odSloVwX7I4884sJwzVOubWspdXnZcMMNW/w8AAAAAAAAiUiq8RPIdQOqoBg7dqx9/fXXbp4/AGgO/dnUTXLN29ma81I3Zb1Tv5phXz3xQ53H9F8l3/qu0Ntm/jDbFs5aHPpe/og+tvlxG1hSclKbbtvH158YCsHXOOBUG7DCGJu//wGhn+lx7z1WMO5wS64ssArrYV+n187tut7tt1vvSMQqevSwDw87LDrPqWh/b7LJJtZfQXULj8X3T9xks3/4NPr1cpvsaqvueqgtOPQwqw7MU9rz3HMs8682tS1dZ3c4N7vDehPRnfZJZz4OHaGzv99Um20NJlJLa99uu7sbN26ca1e+9957W1ekcPn888+3V155pd7H3Hrrra5q/NRTT7X2pvNN1eaao5y/EWgv/K0DAAAAgO6NCnAA6GIKphTZN8/8FFqWnJps6x64hm16zHq22g4r22bHrW89+odbfM//o8CmfTOzTbct4ubSrp231Mvu079O9XdNcrJ9M3myVf3VjtVTtdzgwYNdaNSnTx9bY401wj9XU+PawsbOZdocdSrA/wrtUwaF5wevntm2+wwA0LFU6dwVw28F2qr8vueee2yvvfZq8LGa6/utt95y1eft7emnn7YjjzyS8BsA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cGaAExERERERERERERFlDAbAiYi6gHeZMftb02wo6JEPq8grcSE3Lwfh3Nby4RIBz3c5U/bBtvfIvAzwVQ2A5xaWADbj22Sgvgaaqbx7uNqjMsOJiIiIiIiIiIiIiCj92AOciCgN/b8LeubD7rDOGiSbzYaivgWoWl4BHcszwAsLokH8pBLoPdrZA3zuZCDUCDgKgPVPiY5Nngw0NgIFBcApy8c6KQAuPcClJ7iURzfTNDuchSXx3t/CX++Bu8e6xguGQ4jU18NWWtqh20pERERERERERERERKvOOtEXIiIL85oC4Fbq/x2T39uNSMK7RiQSQXFJScoS6HZTlnSbKj8Flrwf/R3z6afA++9Hf3cwcwA8HA6jUYLtbXCm6AOuSaDblBkeZh9wIiIiIiIiIiIiIqKMwAA4EVEX8C41BsCLe1svAO4okbeMhFLf4TCKynogEgwi0mB8fOY+2ZnC6XTC5XIlZYG3tw94oN4Dm90OW2k08B/DPuBERERERERERERERJmBAXAiok4mmdL1SxotnwEOt45IJBw/qfkakesugZ4i+1mraGcGeBoUFRWtdgBcMsCFrcyYGW7ugU5EREREREREREREROnBADgRUScLNAQRbAoaxop6F8BqgvAbMsAlAB5qcSWV/7a5XLC53egWAXBzCfT66GO1lRkD42FmgBMRERERERERERERZQRHujeAiKi7qzf1/3bk2pFflrkB4rbU19XAZrOpjPZYANzf5IAeWmq4nFZeri7XHQLgTnMJ9FgGeHkZonshKlUWPBERERERERERERERdT0GwImIurj/d2GvAti0zA0QpyJBb6+3HpDNXh751fx+NHl06C3G4K9Wnrnlz0VxcbHhdFNTE8LhMOx2e7szwJFUAp0Z4EREREREREREREREmYAl0ImIOpnXlAFebMH+3xIkDrUEDZndWjCChqWNSeW/7RXGrOlMU1hYmBTcb2gwzlFbPcDDQT9C/uakHuBh9gAnIiIiIiIiIiIiIsoIDIATEXVxCfQiCwbApUx4JBxGLP5tC7XAprtUdrteEy0LnlgCPZM5HA7k5+e3qwy6s9gY6I5lgUsJ9ES6hxngRERERERERERERESZgAFwIqJOFNEjaKhsNIwV9bZmAFwPhxCLgGv+RtjsBWiu8yNQaa0A+Kr0Abc7cpHjLkzqA27OAI/4fNCbmzth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0cx4rdy4P5gBTkRERERERN2VLKRfvHhxujeDusDChQvTvQnUxfj/nT34/53ZFi1alO5NsCwGwImI1pC5zLcVM8DNAV4t0ITEHGjJAA+n6Gdt7gFuLoHeXOtDOKS3fcd1PwM130d/x/z8M/D999HfGdoH3FloygCvjwa67RXG/RGuquq0bSQiIiIiIlqZQYMGYYsttsCWW26pfrbZZhtcfPHF8Hq9KS8/ZswYPPjgg12+nbT6TjvttPj8Dh48GJtuumn89Ouvv96p933rrbfi5Zdf7tT7yBaffvopTjrpJGy77bZq7g477LBOn7/2+vXXX3HKKaes1nV33313zJw5s8O3KVvw/7t74P83mT+PxX6ef/75FV7vySefxH333ddl29ndONK9AUREVtbiD8HfELB8D/CGhobWE5EI7IGE06oHeDn0JcZy3ja3G1penmEsv9yYOR3RIyoIXmixRQHSB7yysrLNAHhuYYnhdLChNuWCAD3FogEiIiIiIqKu9MYbb2DttdeOf7c566yzMHbsWNx5551Jl73hhhvSsIW0Jh599NH43yeccAIOPfRQFVzpCnV1dUkLyGnVSSDsxhtvxNVXX439999fjX333Xe47LLLkJOTg/322y/tx4xCodYqgdR1+P9tffz/plSfx1bl/5BWHzPAiYjWQKOp/LlNsyG/zBgUtloGuB4OwZ7Q/1u4isuSynmby32LXHeO+jHc9srKoGdoAHxFGfI5BcYAeKChVpWG0sqMmeF6bTQwTkRERERElCnfdfbZZx/8+eef8eyta665RmWGS6DliiuuiGca1dbW4vzzz8fQoUOxyy674JlnnonfzpQpU7DHHntgu+22w1VXXZX0nYnS78cff8SIESPwv//9T83hlVdeiXA4HM9Eu+666zBs2DC8+eabWLJkicpO3GqrrdR1JFATex7I3F577bXYYYcdsNtuu8UDcpK1Nn36dDz00ENcOLEGWlpacPPNN6v/o0MOOQS5ubnqR+Zt/PjxsNlsK/yfk3mSuZXgqGQTHnPMMZg/f3789tu6nvyvX3TRRdhxxx1x5plnqueGZPzuvffeKktRgnKS2dnc3IzTTz9dlcLeeuut1XU9Ho96bZBsVrn8a6+9Fr+/OXPm4KCDDlLbIhUlYs856lj8/7YG/n9Te/z++++qusNPP/2kTsvnLfms9sknn6j/Qflf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7rTtM+9T8z63ApfLlVRqRcqgx0rKxwQaooFue4VxPGmfExERERERERERERHRGml3Bvi3334bD6R88803mDVrFmpqkjPXPvroIyxYsGDNtoqIKM0au0kA3FyqMTc3N9r/O9Lah1o4i0qh//urYcxeXg6brfPKvss+bUncXgsGwGX/SBn0hoYGw353FRsz5/310fdLrcLYU116gBMRERERERERERERURoC4C+++CKmTZumDvbLz/XXX590mViA/MADD+zATSQi6nrdIQNcMpHb0//bptmR6y6CzxSM1Tqx/LnanrI8JOah++r9CLeEYcynznyyXxMD4LLfexaaeoAv3+fmfaqnWEhGRERERERERERERERdEAC/5pprcPjhh6sg90knnYQxY8Zg4MCBhstomoaioiJssMEGa7BJRETpJUFYf70/awLgzsIS2DQNeo05AG4s193RZJ8mBsBlDVVznR+FsBbJADfvd+c6fQxjIX8TwsEAtDKWQCciIiIiIiIiIiIiyogAeGFhIbbZZhv19xNPPIEhQ4bEgylERN1Jc61PBWOtHgBvbGw0nI69ZsfKccc4i6JBWb26awPgOXk5sDu0pMx7qwXAze+FqUqgCyk9n2PqAR427XMiIiIiIiIiIiIiIuqiAPhrr72GXXbZBaWlpVi8eLH6WZFDDjlkDTeNiCgzyp8783OR42r3y2XG9gBvMwO8qFT91k0l0KUHeGeb13IWvEvqEIlorX3Ax40DwmHAbrdkAFwywB3OPNhzXQgHWysJyH53mvZppLEBkUAANqezy7aXiIiIiIiIiIiIiKg7a3dE54orrsALL7ygAuDy94pIj3AGwInIqpo8Pstnf0u7ijZLoDfUGsadhcsD4DXGca2sc3uAC0fJOvDNy42fbqrxATtsBCuXQPf7/QiHw3AVl6OpalHruLcGJRuul3R93VMD+1rGkulERERERERERERERNTJAfAPPvgAPXr0iP9NRNRdNXmaLB8Ab2lpUT8pS6CbMsAlUCvCHmM/as1Urrsz5Je5V5h9b8UMcFl8INn3klmfGAAP1Htgy8uDzeVCxN+aGR6u8TAATkRERERERERERETU1QHwvn37pvw7JhQKqX6zJSUlHbVtRERp0VhtKh1engerMWd/S2WOvLy8NkugR3w+REzX6ewe4CK/whQAr7FeADwnJwe5ubkIBoOG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f/VXfyVf+9rX7FDqBS94waI979moFsb5mcfK2rVr7bbF6jkWY9suZB+obVfBWuHnVciogrb8dsz3fi/lOcu579XnlHxLbue/8xZyH6j7joyMyEc/+tGpfb9hwwY77FyxYsWCP2/hvHP1tavnLTxpZLH3e/51MTY2pj1O4ffLYu17FXIX3lf9Wz2eeu6F3Pdne70BAAAAAAAAQKkIwAGgBJdddpns3r17qs2v8thjj9nr+c+r63mqglW1085//my+8IUvyHe+8x35zGc+Iy9+8YsX7XnP5te//rVce+21WkXunj177LBr27Zt8sQTT9itjRV1+fjjj8+6badPn7Y/znXbLmQfqLnDW7Zs0T6/fft2u6L1kksuWZD9frbnLPe+V0HjsmXLtM+rf6u1xdrvqqpa+e53vzu179Vt1X0uv/zyBX1e9W+1VvjY6j7qvuXa7/mQVwW+auZ1ft8/8sgj9v5YzH2vtmHXrl1T+199ToXi6rEXct+f7fUGAAAAAAAAAKUiAAeAEqjWx11dXfL+979fDhw4IP/yL/8iO3bskFe+8pX252+99VY7CFPr6vPqdsuXL7eDtLNR83f/8R//Ud7ylrfYAZuqisx/LOTzluKKK66wqzo/9KEPyeHDh+W+++6TT37yk/LmN79Zbr75ZhkfH5ePf/zjcvDgQftSBWIvfOEL7fu+9rWvlR/96Efyve99T/bu3Svvfe975ZnPfKZdZXouLnQfvO51r5N//dd/lZ///Of2/T7ykY/Iq1/9anvW80Lt99me81xaoC/kvlef/9SnPmW3+lYfn/70p+W2225blP2u9oHa9ypUVW3G1fUf/OAH8pWvfEVuueWWBX1e9aGeQ62pz6nbfPWrX9W+9nLu90svvdRuta4qomtqauS///u/5aabblrUfa9awKtA+h3veIfdFl2F0ENDQ/ZzL+S+P9txBwAAAAAAAICSWQCAGa1fv9566KGHpq4fPXrUev3rX29deuml1otf/GLr/vvv125/7733Ws9//vOtrVu3Wm94wxus48ePl/Q8X/rSl+znmuljIZ+3VPv377duv/126/LLL7ee9rSnWZ///Oct0zTtzz355JPWLbfcYm3ZssV65Stfae3evVu77w9+8APrGc94hn3ft7/97dbw8HBZ9r3ax9dff721bds26/3vf7+VSCQWfL/P9JyVsu8zmYz1iU98wrrqqqusa6+91vq7v/s7+3EXY7/n18u172OxmPXe977X3i833nij9bWvfa3s+11RX/vdd99tvfWtb7Uf+6abbrJuvvnmsuz7W2+91dqwYYP98axnPUt77oXc92c77gAAAAAAAABQCo/6v9LjcgAAAAAAAAAAAAAAKhMt0AHg/7d358FWz38cxz+R7DtjH0uLfUtSIkt2IckSaRlLRpJKaLI2hCxNqyXFiBGREKVJ2ZMlEcpkG9myZi9bv3m+Z75nzr3OubdbkXN+z8fMmXPvPd/7/X6+n/P97/V5vz+SJEmSJEmSJEkqCwbgkiRJkiRJkiRJkqSyYAAuSZIkSZIkSZIkSSoLBuCSJEmSJEmSJEmSpLJgAC5JkiRJkiRJkiRJKgsG4JIkSZIkSZIkSZKksmAALkmSJEmSJEmSJEkqCwbgkiRJkiRJkiRJkqSyYAAuqST17Nkzbb/99mnkyJGpFBx88MHpkksuKfr5J598EvczduzY9P/ixx9/TC1atEjvv/9+/M79Dx48OJUL7oV7qokHH3wwnX322f/YmCRJkiRJkiRJKncG4JJKMjidPHlyatCgQbr//vvT4sWLV/SQtBSuueaaWBhQt27dFT2U/4wTTjghffXVVxGES5IkSZIkSZKkmjMAl1Ryxo8fH+99+vRJH330UXrppZdW9JBUQ2+//XZ67LHHUufOnVf0UP5TatWqFXNy8803p4ULF67o4UiSJEmSJEmSVHIMwCWVnIceeig1bdo0NWnSJG299dZp9OjRFT4//fTTIxy//fbb04EHHph23XXXdMopp6Q333yzQnvqQw89ND399NPpmGOOSbvssks6/PDD07hx43LH0I6cFta0J6+qnfm3336brrrqqnTQQQfFeRo3bpy6dOnyt/+rKa597733xr1wzj333DN169Ytff311xWOY8zHH3982n333eN+b7rppvTbb7/lPp81a1Y644wz0j777JMaNmyYzjnnnDR37tzc59OnT49rTZs2LeZut912i/OMGTMmffnll+m8886Lax9wwAHprrvuqnDtBQsWpMsvvzztu+++Mc8nnXRSnKc6t912W3x/G220UdFjuHbv3r3juoypTZs26amnnqpwzE8//RTX53lgjN27d48xVtd6nEUUxx57bJyXcVx44YVp/vz5uc/pKsB5jjzyyDiGZ2XEiBEVug0wP61bt0577LFHHHPcccelCRMmVHldOhfwP8xVs2bN0tVXX51++eWXCsfwHC1atCiec0mSJEmSJEmSVDMG4JJKCsEtgW6rVq3id94JRSuHwk8++WT8/dJLL41qWj7v2rVr+vPPP3PH0Gq6b9++qX379hGWb7nlluniiy/O7Um9JAhEqdh94YUXIkQlJCUwJgS+4oorlvl+BwwYkP7666+4h4suuihNnTo19evXL/c5ATlj3nnnndOQIUNi/+hRo0ZFsAqq49u2bRs/83/8/fPPP48FAZXvs0ePHhHuE05vu+22MX7mpn79+mnYsGER8l577bW5hQSEtB06dIh5Jnjm+ptuumk688wzqwzBf/755zRlypR02GGHFT2G74vA+9VXX41zs2Bhiy22iIUFjz76aO64c889N0JnvlvminOzAKAqr732Wswl1x8+fHiE7MwT+8pn+vfvHy/m49Zbb42x3HjjjfGcZPNO8H7IIYfEfPFZnTp14hn44osvCl6XinfGv91226WhQ4fGc8K9cA/5wfqqq64aITjHS5IkSZIkSZKkmqldw+MlaYWiKna99daLYBJUPhOOsmcylc2ZP/74I8LotdZaK34nGCUonj17dlRp49dff419qKkexjbbbBPB4zPPPLPE+1JTpbz66qvHuRs1ahR/o9L6448/jv3JlxX7nBM6ZwifJ06cGD8TjBOkEsJmgXd2X48//nj6/fffIwymSp7gduWVV47P99tvv6hoHjRoUBo4cGCF/ac7deoUP6+xxhpRzU3oTdU5dthhhzRp0qQ0Y8aM+PsjjzyS5syZkx544IGoPkfz5s2jipxAuFgFM6E2Y+Mcxdx5551RWc9CBoJvUAnesWPHCKZbtmwZleu8+P6zMJ3r81lVixgIwFdbbbVYLEBoDZ4pFlYQRLPH/N13353atWuXevXqFZ9T4c6CiVdeeSUWPMybNy+q6gmvM4yT6m7Of/TRR1e4JudlTvbff/94z/DMcU88c1TdZ6gQf+KJJ6LCPXuGJUmSJEmSJElS9awAl1QyCE2pmCXwZX/kH374Ia255pppr732ihCWQDhTr169CsHhJptskguH89G+OkP1Miq3pK4K5yUsZQy0PKcSnApsQuL8NuRLK3982Rize/jwww/TN998E2F2PoJZ2rczX4S6tPHOwm+ss846EfS//PLLFf6PFuKZDTfc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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "==================================================\n" - ] - }, - { - "data": { - "text/plain": [ - "'\\nplot_synthetic_data(\\n data=synthetic_data_uk_gapminder,\\n mean=generated_mean_uk_gapminder,\\n gini=generated_gini_uk_gapminder,\\n original_mean=target_mean_uk_gapminder,\\n original_gini=target_gini_uk_gapminder,\\n country=\"UK\",\\n source=\"Gapminder\",\\n ipl=2.15,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_uk_moatsos,\\n mean=generated_mean_uk_moatsos,\\n gini=generated_gini_uk_moatsos,\\n original_mean=target_mean_uk_moatsos,\\n original_gini=target_gini_uk_moatsos,\\n country=\"UK\",\\n source=\"Moatsos\",\\n ipl=1.90,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_uk_mpd_gapminder,\\n mean=generated_mean_uk_mpd_gapminder,\\n gini=generated_gini_uk_mpd_gapminder,\\n original_mean=target_mean_uk_mpd_gapminder,\\n original_gini=target_gini_uk_mpd_gapminder,\\n country=\"UK\",\\n source=\"MPD + Gini Gapminder\",\\n ipl=1.90,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_uk_mpd_moatsos,\\n mean=generated_mean_uk_mpd_moatsos,\\n gini=generated_gini_uk_mpd_moatsos,\\n original_mean=target_mean_uk_mpd_moatsos,\\n original_gini=target_gini_uk_mpd_moatsos,\\n country=\"UK\",\\n source=\"MPD + Gini Moatsos\",\\n ipl=1.90,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_sweden_gapminder,\\n mean=generated_mean_sweden_gapminder,\\n gini=generated_gini_sweden_gapminder,\\n original_mean=target_mean_sweden_gapminder,\\n original_gini=target_gini_sweden_gapminder,\\n country=\"Sweden\",\\n source=\"Gapminder\",\\n ipl=2.15,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_sweden_moatsos,\\n mean=generated_mean_sweden_moatsos,\\n gini=generated_gini_sweden_moatsos,\\n original_mean=target_mean_sweden_moatsos,\\n original_gini=target_gini_sweden_moatsos,\\n country=\"Sweden\",\\n source=\"Moatsos\",\\n ipl=1.90,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_sweden_mpd_gapminder,\\n mean=generated_mean_sweden_mpd_gapminder,\\n gini=generated_gini_sweden_mpd_gapminder,\\n original_mean=target_mean_sweden_mpd_gapminder,\\n original_gini=target_gini_sweden_mpd_gapminder,\\n country=\"Sweden\",\\n source=\"MPD + Gini Gapminder\",\\n ipl=1.90,\\n)\\nplot_synthetic_data(\\n data=synthetic_data_sweden_mpd_moatsos,\\n mean=generated_mean_sweden_mpd_moatsos,\\n gini=generated_gini_sweden_mpd_moatsos,\\n original_mean=target_mean_sweden_mpd_moatsos,\\n original_gini=target_gini_sweden_mpd_moatsos,\\n country=\"Sweden\",\\n source=\"MPD + Gini Moatsos\",\\n ipl=1.90,\\n)\\n'" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Set seaborn style and color palette\n", - "sns.set_style(\"ticks\")\n", - "sns.set_palette(\"deep\")\n", - "\n", - "# Plot UK distributions separately\n", - "print(\"UK Distribution Analysis:\")\n", - "print(\"=\" * 50)\n", - "plot_country_distributions(\"UK\")\n", - "plot_country_distributions_with_stats(\"UK\")\n", - "\n", - "print(\"\\n\" + \"=\" * 50)\n", - "print(\"Sweden Distribution Analysis:\")\n", - "print(\"=\" * 50)\n", - "plot_country_distributions(\"Sweden\")\n", - "plot_country_distributions_with_stats(\"Sweden\")\n", - "\n", - "print(\"\\n\" + \"=\" * 50)\n", - "\n", - "# Optional: Still show individual plots if needed (commented out)\n", - "\"\"\"\n", - "plot_synthetic_data(\n", - " data=synthetic_data_uk_gapminder,\n", - " mean=generated_mean_uk_gapminder,\n", - " gini=generated_gini_uk_gapminder,\n", - " original_mean=target_mean_uk_gapminder,\n", - " original_gini=target_gini_uk_gapminder,\n", - " country=\"UK\",\n", - " source=\"Gapminder\",\n", - " ipl=2.15,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_uk_moatsos,\n", - " mean=generated_mean_uk_moatsos,\n", - " gini=generated_gini_uk_moatsos,\n", - " original_mean=target_mean_uk_moatsos,\n", - " original_gini=target_gini_uk_moatsos,\n", - " country=\"UK\",\n", - " source=\"Moatsos\",\n", - " ipl=1.90,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_uk_mpd_gapminder,\n", - " mean=generated_mean_uk_mpd_gapminder,\n", - " gini=generated_gini_uk_mpd_gapminder,\n", - " original_mean=target_mean_uk_mpd_gapminder,\n", - " original_gini=target_gini_uk_mpd_gapminder,\n", - " country=\"UK\",\n", - " source=\"MPD + Gini Gapminder\",\n", - " ipl=1.90,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_uk_mpd_moatsos,\n", - " mean=generated_mean_uk_mpd_moatsos,\n", - " gini=generated_gini_uk_mpd_moatsos,\n", - " original_mean=target_mean_uk_mpd_moatsos,\n", - " original_gini=target_gini_uk_mpd_moatsos,\n", - " country=\"UK\",\n", - " source=\"MPD + Gini Moatsos\",\n", - " ipl=1.90,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_sweden_gapminder,\n", - " mean=generated_mean_sweden_gapminder,\n", - " gini=generated_gini_sweden_gapminder,\n", - " original_mean=target_mean_sweden_gapminder,\n", - " original_gini=target_gini_sweden_gapminder,\n", - " country=\"Sweden\",\n", - " source=\"Gapminder\",\n", - " ipl=2.15,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_sweden_moatsos,\n", - " mean=generated_mean_sweden_moatsos,\n", - " gini=generated_gini_sweden_moatsos,\n", - " original_mean=target_mean_sweden_moatsos,\n", - " original_gini=target_gini_sweden_moatsos,\n", - " country=\"Sweden\",\n", - " source=\"Moatsos\",\n", - " ipl=1.90,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_sweden_mpd_gapminder,\n", - " mean=generated_mean_sweden_mpd_gapminder,\n", - " gini=generated_gini_sweden_mpd_gapminder,\n", - " original_mean=target_mean_sweden_mpd_gapminder,\n", - " original_gini=target_gini_sweden_mpd_gapminder,\n", - " country=\"Sweden\",\n", - " source=\"MPD + Gini Gapminder\",\n", - " ipl=1.90,\n", - ")\n", - "plot_synthetic_data(\n", - " data=synthetic_data_sweden_mpd_moatsos,\n", - " mean=generated_mean_sweden_mpd_moatsos,\n", - " gini=generated_gini_sweden_mpd_moatsos,\n", - " original_mean=target_mean_sweden_mpd_moatsos,\n", - " original_gini=target_gini_sweden_mpd_moatsos,\n", - " country=\"Sweden\",\n", - " source=\"MPD + Gini Moatsos\",\n", - " ipl=1.90,\n", - ")\n", - "\"\"\"" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "961baa5d", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "venv", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.11.6" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} From f7b2c3a55cd0c4133e397b8d103bb73b0f5a0d2e Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 18:15:17 +0100 Subject: [PATCH 32/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20place=20reference-line=20labels=20adaptively?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pick between hanging the rotated reference-line label inside axes[0] from its top edge (when the curve at the label's x leaves ≥50% headroom — e.g. Sweden 1820 at the IPL) or floating it just above axes[0] in the figure margin (when the curve fills axes[0] — e.g. Ethiopia at the IPL). Drops the previous "always above figure margin" placement that felt too far from the chart for low-density rows. Also: World mean kwarg removed, reference-line defaults flipped to None, scipy imports cleaned up. --- ..._common_norm_False_multiple_areas_none.svg | 112 +-- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 106 +-- ..._common_norm_False_multiple_areas_none.svg | 104 +-- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ..._multiple_layer_common_norm_False_rows.svg | 867 +++++++++-------- ..._multiple_layer_common_norm_False_rows.svg | 868 +++++++++--------- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 86 +- ..._common_norm_False_multiple_areas_3_30.svg | 82 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 84 +- ..._common_norm_False_multiple_areas_3_30.svg | 82 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 84 +- .../Sweden_per_year_row_log_True.svg | 148 +-- ...Sweden_per_year_row_log_True_lognormal.svg | 148 +-- ..._common_norm_False_multiple_areas_none.svg | 102 +- ..._common_norm_False_multiple_areas_none.svg | 100 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 138 ++- .../distribution_generator.py | 179 ++-- 30 files changed, 2174 insertions(+), 2334 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 92e2b1bc..0e57e8c0 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.668971 + 2026-05-22T18:12:08.265357 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index 43772d7b..a7691913 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:17.244727 + 2026-05-22T18:12:10.709281 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index c52da09b..a73b276d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.904502 + 2026-05-22T18:12:08.489246 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,173 +156,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -333,7 +333,7 @@ L 0 2 - - + - - + - - - - - - - - International Poverty Line: $90 - - - World median: $289 - - + Country @@ -1199,7 +1183,7 @@ L 685.8 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1210,7 +1194,7 @@ L 685.8 89.361375 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Democratic Republic of Congo diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 00538639..6863d34b 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.975361 + 2026-05-22T18:12:08.559082 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,180 +156,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -340,7 +340,7 @@ L 0 2 - - + - - + - - - - - - - International Poverty Line: $90 - - - World median: $289 - - Denmark (2023) - + Democratic Republic of Congo (2020) diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index e8a4a61a..4712a071 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.758136 + 2026-05-22T18:12:08.349455 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - - International Poverty Line: $90 - - - World median: $289 - - + Country @@ -1157,7 +1141,7 @@ L 694.141406 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1168,7 +1152,7 @@ L 694.141406 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Ethiopia diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 918a2e3a..68c8efce 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.826979 + 2026-05-22T18:12:08.414122 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - International Poverty Line: $90 - - - World median: $289 - - Denmark (2023) - + Ethiopia (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0885b8f3..9264b9cd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.056466 + 2026-05-22T18:12:08.638131 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - - International Poverty Line: $90 - - - World median: $289 - - + Country @@ -1157,7 +1141,7 @@ L 685.8 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1168,7 +1152,7 @@ L 685.8 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Madagascar diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b1992d5c..515f3979 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.129077 + 2026-05-22T18:12:08.705894 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,145 +156,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@ L 0 2 - - + - - + - - - - - - - International Poverty Line: $90 - - - World median: $289 - - Denmark (2023) - + Madagascar (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index ef2e6c21..d5463e06 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.205469 + 2026-05-22T18:12:08.782229 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - - International Poverty Line: $90 - - - World median: $289 - - + Country @@ -1157,7 +1141,7 @@ L 694.141406 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1168,7 +1152,7 @@ L 694.141406 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Niger diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index c6921626..d96d8d90 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.271844 + 2026-05-22T18:12:08.846589 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - International Poverty Line: $90 - - - World median: $289 - - Denmark (2023) - + Niger (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 54916d57..bb61b8e4 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.347892 + 2026-05-22T18:12:08.922988 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - - International Poverty Line: $90 - - - World median: $289 - - + Country @@ -1157,7 +1141,7 @@ L 694.141406 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1168,7 +1152,7 @@ L 694.141406 89.361375 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Syria diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 4a69da82..b4ba1512 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.602045 + 2026-05-22T18:12:09.172876 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - - - - - - International Poverty Line: $90 - - - World median: $289 - - Denmark (2023) - + Syria (2022) diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 9508f885..ac239dbf 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T17:06:16.176242 + 2026-05-22T18:12:09.588297 image/svg+xml @@ -21,8 +21,8 @@ - - @@ -74,7 +74,7 @@ z - - + - - + - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Ethiopia + Ethiopia - @@ -2896,7 +2896,7 @@ z - - + - - + - - - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Bangladesh + Bangladesh - @@ -5559,7 +5559,7 @@ z - - + - - + - - - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Vietnam + Vietnam - @@ -8100,7 +8100,7 @@ z - - + - - + - - - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Turkey + Turkey - @@ -10585,275 +10585,275 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - International - Poverty Line: - $3.00 - - - World median: - $9.65 - - - United States + United States - - - + + International + Poverty Line: + $3.00 diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index 4e06576f..4ae890a1 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,12 +1,12 @@ - + - 2026-05-22T17:06:16.494488 + 2026-05-22T18:12:09.829342 image/svg+xml @@ -21,8 +21,8 @@ - - @@ -75,7 +75,7 @@ z - - + - - + - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Consumption data from 2021 + Consumption data from 2021 - Ethiopia + Ethiopia - @@ -3041,7 +3041,7 @@ z - - + - - + - - - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Consumption data from 2022 + Consumption data from 2022 - Bangladesh + Bangladesh - @@ -5841,7 +5841,7 @@ z - - + - - + - - - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Consumption data from 2022 + Consumption data from 2022 - Vietnam + Vietnam - @@ -8509,7 +8509,7 @@ z - - + - - + - - - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Income data from 2023 + Income data from 2023 - Turkey + Turkey - @@ -11109,282 +11109,282 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - International - Poverty Line: - $3.00 + Income data from 2024 - Income data from 2024 - - - United States + United States - + + International + Poverty Line: + $3.00 + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5445e180..fd366dd2 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.539277 + 2026-05-22T18:12:08.142022 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 4c041e3e..7dcd595b 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:24.969381 + 2026-05-22T18:12:20.516615 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 2ad2ac76..2e3fa333 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:32.778685 + 2026-05-22T18:12:25.838534 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 2b3b8e30..5e168f69 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:25.032551 + 2026-05-22T18:12:20.574524 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 6c06dd6f..0176bc20 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:32.839091 + 2026-05-22T18:12:25.910715 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 248bfd72..c1ee2aaf 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:25.092703 + 2026-05-22T18:12:20.630363 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index a03360d1..3f67c788 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:32.897529 + 2026-05-22T18:12:25.972274 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index c8d7af7a..2bf55189 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:31.187499 + 2026-05-22T18:12:24.154291 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + - - + @@ -5463,6 +5463,16 @@ L 813.6 141.278333 Sweden (1820) + + International + Poverty Line: + $90 + + + High-income + Poverty Line: + $900 + @@ -5511,7 +5521,7 @@ z - - + - - + - - + @@ -10206,7 +10216,7 @@ L 707.93366 286.147732 L 813.6 286.156667 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (1920) @@ -10223,279 +10233,279 @@ z - - + - + $10 - + - + $20 - + - + $50 - + - + $100 - + - + $200 - + - + $500 - + - + $1000 - + - + $2000 - + - + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + Income or consumption (month) - - + - - + @@ -13577,9 +13587,19 @@ L 813.618742 431.02189 L 813.6 431.035 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (2026) + + + + + + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg index 8fd4bb44..26795681 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:35.952038 + 2026-05-22T18:12:30.368183 image/svg+xml @@ -76,7 +76,7 @@ z - - + - - + - - + @@ -5465,12 +5465,17 @@ L 813.6 141.278333 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - International - Poverty Line: - $90 + Sweden (1820) - Sweden (1820) + International + Poverty Line: + $90 + + + High-income + Poverty Line: + $900 @@ -5521,7 +5526,7 @@ z - - + - - + - - + @@ -10217,7 +10222,7 @@ L 705.716358 286.146977 L 813.6 286.156667 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (1920) @@ -10234,286 +10239,286 @@ z - - + - + $10 - + - + $20 - + - + $50 - + - + $100 - + - + $200 - + - + $500 - + - + $1000 - + - + $2000 - + - + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + Income or consumption (month) - - + - - + @@ -13235,13 +13240,18 @@ L 813.617568 431.016053 L 813.6 431.035 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + Sweden (2026) + + + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 80bb262f..81133195 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.709915 + 2026-05-22T18:12:09.262202 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,159 +156,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -319,7 +319,7 @@ L 0 2 - - + - - + - - - - - - - - International Poverty Line: $90 - - - World median: $289 - - + Country @@ -1185,7 +1169,7 @@ L 685.8 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + United States @@ -1196,7 +1180,7 @@ L 685.8 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Burundi diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index e879068a..01882295 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:15.804287 + 2026-05-22T18:12:09.335497 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,166 +156,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -326,7 +326,7 @@ L 0 2 - - + - - + - - - - - - - International Poverty Line: $90 - - - World median: $289 - - United States (2024) - + Burundi (2020) diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 7af9cd53..bff725ac 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:17.144283 + 2026-05-22T18:12:10.604130 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imageb4150ea8e8" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/>
diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index c23f70f8..146c6be0 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.376555 + 2026-05-22T18:12:07.985112 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index bf14610c..bbb330ef 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:14.454677 + 2026-05-22T18:12:08.060134 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 6255d369..4367522f 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T17:06:17.062750 + 2026-05-22T18:12:10.516395 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - - - - - - - International Poverty Line: $3.00 - - - World median: $9.65 - - + Region @@ -3258,7 +3242,7 @@ L 685.8 113.780312 z " style="fill: #4c72b0; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + East Asia and Pacific @@ -3269,7 +3253,7 @@ L 685.8 128.0475 z " style="fill: #dd8452; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Europe and Central Asia @@ -3280,7 +3264,7 @@ L 685.8 142.192812 z " style="fill: #55a868; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Latin America and Caribbean @@ -3291,7 +3275,7 @@ L 685.8 156.46 z " style="fill: #c44e52; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Middle East, North Africa, Afghanistan and Pakistan @@ -3302,7 +3286,7 @@ L 685.8 170.7225 z " style="fill: #8172b3; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + North America @@ -3313,7 +3297,7 @@ L 685.8 184.867812 z " style="fill: #937860; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + South Asia @@ -3324,7 +3308,7 @@ L 685.8 199.013125 z " style="fill: #da8bc3; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Sub-Saharan Africa diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d782ca92..d667a09d 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -7,8 +7,6 @@ import pandas as pd import seaborn as sns from matplotlib.offsetbox import AnnotationBbox, TextArea, VPacker -from scipy.optimize import minimize -from scipy.stats import norm PARENT_DIR = Path(__file__).parent.absolute() @@ -306,7 +304,6 @@ def run() -> None: period="day", survey_based=False, add_ipl="line", - add_world_median="line", add_national_lines=True, df_national_lines=df_national_lines, ) @@ -329,7 +326,6 @@ def run() -> None: preferred_reporting_level="national", preferred_welfare_type="income", add_ipl="line", - add_world_median=None, add_national_lines=True, df_national_lines=df_national_lines, ) @@ -434,8 +430,8 @@ def run() -> None: gridsize=GRIDSIZE_HIGHER_RESOLUTION, period="month", survey_based=False, - add_ipl=None, - add_world_median=None, + add_ipl="line", + add_high_income_pl="line", width=1150, height=220, row_by="year", @@ -463,8 +459,6 @@ def run() -> None: gridsize=GRIDSIZE_HIGHER_RESOLUTION, period="month", survey_based=False, - add_ipl=None, - add_world_median=None, add_multiple_lines_day=[3, 30], width=1150, height=220, @@ -489,7 +483,7 @@ def run() -> None: period="month", survey_based=False, add_ipl="line", - add_world_median=None, + add_high_income_pl="line", width=1150, height=220, row_by="year", @@ -516,8 +510,8 @@ def distributional_plots( survey_based: bool = False, preferred_reporting_level: Literal["national", "urban", "rural", None] = None, preferred_welfare_type: Literal["income", "consumption", None] = None, - add_ipl: Literal["line", "area", None] = "line", - add_world_median: Literal["line", "area", None] = "line", + add_ipl: Literal["line", "area", None] = None, + add_world_median: Literal["line", "area", None] = None, add_multiple_lines_day: List[float] = None, width: int = WIDTH, height: int = HEIGHT, @@ -789,7 +783,7 @@ def _filter_year(year_value): values=[ipl], ) - if add_world_median == "line": + if add_world_median == "line" and df_main_indicators is not None: # Add a vertical line for the world median, in the same format as the international poverty line plt.axvline( x=world_median_year, @@ -806,7 +800,7 @@ def _filter_year(year_value): verticalalignment="top", fontsize=8, ) - elif add_world_median == "area": + elif add_world_median == "area" and df_main_indicators is not None: draw_area_under_curve( kde_plot=kde_plot, number_of_countries=number_of_countries, @@ -929,8 +923,8 @@ def distributional_plots_per_row( survey_based: bool = False, preferred_reporting_level: Literal["national", "urban", "rural", None] = None, preferred_welfare_type: Literal["income", "consumption", None] = None, - add_ipl: Literal["line", "area", None] = "line", - add_world_median: Literal["line", "area", None] = "line", + add_ipl: Literal["line", "area", None] = None, + add_world_median: Literal["line", "area", None] = None, add_national_lines: bool = False, df_national_lines: pd.DataFrame = None, width: int = WIDTH, @@ -1132,31 +1126,9 @@ def distributional_plots_per_row( fontsize=8, ) - # Add line labels only to the last axis - if ax == axes[-1]: - if add_ipl == "line": - ax.text( - x=ipl, - y=plt.ylim()[1], - s=f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) - - if add_world_median == "line": - ax.text( - x=world_median_year, - y=plt.ylim()[1], - s=f"World median:\n${world_median_year:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) + # IPL / world-median labels are placed once in the figure margin + # below (via _add_figure_spanning_vline_label) so they appear above + # the whole stack rather than inside one of the subplots. # Add the name of the country at the middle of the distribution, bottom year_to_write = country_data["year"].iloc[0] if survey_based else year @@ -1225,10 +1197,22 @@ def distributional_plots_per_row( _add_figure_spanning_vline( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) + _add_figure_spanning_vline_label( + fig, axes, ipl, + f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", + ) if add_world_median == "line": _add_figure_spanning_vline( + fig, + axes, + world_median_year, + color="lightgrey", + linestyle=":", + linewidth=0.8, + ) + _add_figure_spanning_vline_label( fig, axes, world_median_year, - color="lightgrey", linestyle=":", linewidth=0.8, + f"World median:\n${world_median_year:.{dollar_decimals}f}", ) # Remove the clipping of the figure @@ -1389,41 +1373,20 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: elif add_world_median == "area" and world_median_year is not None: draw_area_under_curve(kde_plot=kde_plot, values=[world_median_year]) - # Labels only on the top row, matching the per-country layout. - if ax is axes[0]: - if add_ipl == "line": - ax.text( - x=ipl, - y=ax.get_ylim()[1], - s=f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) - if add_high_income_pl == "line": - ax.text( - x=high_income_pl, - y=ax.get_ylim()[1], - s=f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) - if add_world_median == "line" and world_median_year is not None: - ax.text( - x=world_median_year, - y=ax.get_ylim()[1], - s=f"World median:\n${world_median_year:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) + # IPL and high-income labels are constant across rows and rendered once + # in the figure margin (below). World-median varies per year so its label + # stays in the top row inline. + if ax is axes[0] and add_world_median == "line" and world_median_year is not None: + ax.text( + x=world_median_year, + y=ax.get_ylim()[1], + s=f"World median:\n${world_median_year:.{dollar_decimals}f}", + color="grey", + rotation=90, + verticalalignment="top", + horizontalalignment="left", + fontsize=8, + ) ax.text( x=data_year[x].median() if len(data_year) else 1.0, @@ -1463,10 +1426,18 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: _add_figure_spanning_vline( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) + _add_figure_spanning_vline_label( + fig, axes, ipl, + f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", + ) if add_high_income_pl == "line": _add_figure_spanning_vline( fig, axes, high_income_pl, color="lightgrey", linestyle=":", linewidth=0.8 ) + _add_figure_spanning_vline_label( + fig, axes, high_income_pl, + f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", + ) for o in fig.findobj(): o.set_clip_on(False) @@ -2274,6 +2245,62 @@ def _add_figure_spanning_vline(fig, axes, x, **kwargs) -> None: fig.add_artist(line) +def _add_figure_spanning_vline_label(fig, axes, x, text) -> None: + """Place a label for a figure-spanning vertical reference line near the + top of the topmost subplot, anchored at data x. + + The label sits *inside* axes[0] hanging from its top edge when there's + visual room (curve density at x is small relative to ylim), or *above* + axes[0] in the figure margin when the topmost curve is too tall at that x + to avoid overlap. Sweden 1820 at the IPL is an example of the first case; + Ethiopia at the IPL is an example of the second. + """ + from matplotlib.text import Text + from matplotlib.transforms import blended_transform_factory + + ax = axes[0] + inside_room = True + if ax.lines: + xs = np.asarray(ax.lines[0].get_data()[0]) + ys = np.asarray(ax.lines[0].get_data()[1]) + if xs.size and ys.size: + order = np.argsort(xs) + y_at_x = float(np.interp(x, xs[order], ys[order])) + ylim_max = ax.get_ylim()[1] + # Allow the label inside only if the curve at x leaves ≥50% of + # axes height free above it for the rotated label to hang into. + if ylim_max > 0 and y_at_x > 0.5 * ylim_max: + inside_room = False + + if inside_room: + trans = blended_transform_factory(ax.transData, ax.transAxes) + ax.text( + x=x, + y=1.0, + s=text, + transform=trans, + color="grey", + rotation=90, + verticalalignment="top", + horizontalalignment="left", + fontsize=8, + ) + else: + trans = blended_transform_factory(ax.transData, fig.transFigure) + label = Text( + x=x, + y=ax.get_position().y1 + 0.005, + text=text, + transform=trans, + color="grey", + rotation=90, + verticalalignment="bottom", + horizontalalignment="left", + fontsize=8, + ) + fig.add_artist(label) + + def draw_complete_area_under_curve( kde_plot: plt.Axes, number_of_countries: int = 1 ) -> None: From d1328c71f32d277969f47ae8011dabd1aed647bc Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Fri, 22 May 2026 18:52:39 +0100 Subject: [PATCH 33/38] =?UTF-8?q?=F0=9F=90=9B=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20stop=20mutating=20add=5Fmultiple=5Flines=5Fday?= =?UTF-8?q?=20across=20years?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The per-year loop in distributional_plots was multiplying add_multiple_lines_day by period_factor in place. On the second year the values were already in period units and got multiplied again, pushing both threshold fills past the data extent so they collapsed into the same polygon. Use a fresh local `scaled_lines` per iteration. Also: revert add_ipl/add_world_median defaults to "line" and set them explicitly to None for the Sweden lognormal separate call so the line stays out of those charts. --- ..._common_norm_False_multiple_areas_none.svg | 112 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 106 +- ..._common_norm_False_multiple_areas_none.svg | 104 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ..._common_norm_False_multiple_areas_none.svg | 94 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ..._multiple_layer_common_norm_False_rows.svg | 159 +- ..._multiple_layer_common_norm_False_rows.svg | 169 +- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 86 +- ..._common_norm_False_multiple_areas_3_30.svg | 2098 ++++++++++------ ...rm_False_multiple_areas_3_30_lognormal.svg | 2100 +++++++++++------ ..._common_norm_False_multiple_areas_3_30.svg | 1626 +++---------- ...rm_False_multiple_areas_3_30_lognormal.svg | 1978 +++------------- .../Sweden_per_year_row_log_True.svg | 104 +- ...Sweden_per_year_row_log_True_lognormal.svg | 106 +- ..._common_norm_False_multiple_areas_none.svg | 102 +- ..._common_norm_False_multiple_areas_none.svg | 100 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 138 +- .../distribution_generator.py | 19 +- 30 files changed, 4665 insertions(+), 5660 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0e57e8c0..192d8852 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.265357 + 2026-05-22T18:50:25.417069 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index a7691913..a6faedb7 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:10.709281 + 2026-05-22T18:50:27.770460 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index a73b276d..8b43eb1a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.489246 + 2026-05-22T18:50:25.644764 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,173 +156,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -333,7 +333,7 @@ L 0 2 - - + - - + + + + + + + + + International Poverty Line: $90 + + + World median: $289 + - + Country @@ -1183,7 +1199,7 @@ L 685.8 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1194,7 +1210,7 @@ L 685.8 89.361375 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Democratic Republic of Congo diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 6863d34b..d007662d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.559082 + 2026-05-22T18:50:25.715643 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,180 +156,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -340,7 +340,7 @@ L 0 2 - - + - - + + + + + + + - Denmark (2023) + International Poverty Line: $90 + World median: $289 + + + Denmark (2023) + + Democratic Republic of Congo (2020) diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 4712a071..56567f2d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.349455 + 2026-05-22T18:50:25.499666 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + + + International Poverty Line: $90 + + + World median: $289 + - + Country @@ -1141,7 +1157,7 @@ L 694.141406 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1152,7 +1168,7 @@ L 694.141406 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Ethiopia diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 68c8efce..1e545b5b 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.414122 + 2026-05-22T18:50:25.567980 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + - Denmark (2023) + International Poverty Line: $90 + World median: $289 + + + Denmark (2023) + + Ethiopia (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 9264b9cd..22cbeaa9 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.638131 + 2026-05-22T18:50:25.794546 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + + + International Poverty Line: $90 + + + World median: $289 + - + Country @@ -1141,7 +1157,7 @@ L 685.8 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1152,7 +1168,7 @@ L 685.8 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Madagascar diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 515f3979..687e1551 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.705894 + 2026-05-22T18:50:25.864876 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,145 +156,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@ L 0 2 - - + - - + + + + + + + - Denmark (2023) + International Poverty Line: $90 + World median: $289 + + + Denmark (2023) + + Madagascar (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index d5463e06..0f1a7862 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.782229 + 2026-05-22T18:50:25.942380 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + + + International Poverty Line: $90 + + + World median: $289 + - + Country @@ -1141,7 +1157,7 @@ L 694.141406 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1152,7 +1168,7 @@ L 694.141406 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Niger diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index d96d8d90..f98a4c32 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.846589 + 2026-05-22T18:50:26.011422 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + - Denmark (2023) + International Poverty Line: $90 + World median: $289 + + + Denmark (2023) + + Niger (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index bb61b8e4..a15c4c96 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.922988 + 2026-05-22T18:50:26.090819 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + + + International Poverty Line: $90 + + + World median: $289 + - + Country @@ -1141,7 +1157,7 @@ L 694.141406 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + Denmark @@ -1152,7 +1168,7 @@ L 694.141406 89.361375 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Syria diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b4ba1512..d94fc0b1 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:09.172876 + 2026-05-22T18:50:26.322986 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + + + + + + + - Denmark (2023) + International Poverty Line: $90 + World median: $289 + + + Denmark (2023) + + Syria (2022) diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index ac239dbf..18fbebff 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:09.588297 + 2026-05-22T18:50:26.741758 image/svg+xml @@ -74,7 +74,7 @@ z - - + - - + @@ -2849,6 +2849,10 @@ L 1055.759099 136.472164 Ethiopia + + World median: + $9.65 + @@ -2896,7 +2900,7 @@ z - - + - - + @@ -5506,10 +5510,10 @@ L 609.056636 238.652926 L 1055.759099 238.66006 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $3.83 The poverty line in Bangladesh* - + Bangladesh @@ -5559,7 +5563,7 @@ z - - + - - + @@ -8047,10 +8051,10 @@ L 740.397518 340.841097 L 1055.759099 340.847957 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $4.29 The poverty line in Vietnam* - + Vietnam @@ -8100,7 +8104,7 @@ z - - + - - + @@ -10565,10 +10569,10 @@ L 907.177414 443.031198 L 1055.759099 443.035853 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $8.70 The poverty line in Turkey* - + Turkey @@ -10585,275 +10589,275 @@ z - - + - + $1 - + - + $2 - + - + $5 - + - + $10 - + - + $20 - + - + $50 - + - + $100 - + - + $200 - + - + $500 - + - + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + Income or consumption (day) - - + - - + @@ -13833,10 +13837,10 @@ L 1008.097322 545.217378 L 1055.759099 545.22375 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $27.10 The poverty line in United States* - + United States @@ -13845,7 +13849,12 @@ L 1055.759099 545.22375 L 234.812479 56.58875 " style="fill: none; stroke-dasharray: 0.8,1.32; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - + + + + International Poverty Line: $3.00 diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index 4ae890a1..ee1aaed9 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:09.829342 + 2026-05-22T18:50:26.987155 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + @@ -2993,6 +2993,10 @@ L 968.664266 136.472164 Ethiopia + + World median: + $9.65 + @@ -3041,7 +3045,7 @@ z - - + - - + @@ -5784,13 +5788,13 @@ L 553.810957 238.632363 L 968.664266 238.66006 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $3.83 The poverty line in Bangladesh* - + Consumption data from 2022 - + Bangladesh @@ -5841,7 +5845,7 @@ z - - + - - + @@ -8452,13 +8456,13 @@ L 669.237968 340.822699 L 968.664266 340.847957 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $4.29 The poverty line in Vietnam* - + Consumption data from 2022 - + Vietnam @@ -8509,7 +8513,7 @@ z - - + - - + @@ -11086,13 +11090,13 @@ L 811.40944 443.015185 L 968.664266 443.035853 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $8.70 The poverty line in Turkey* - + Income data from 2023 - + Turkey @@ -11109,282 +11113,282 @@ z - - + - + $1 - + - + $2 - + - + $5 - + - + $10 - + - + $20 - + - + $50 - + - + $100 - + - + $200 - + - + $500 - + - + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + Income or consumption (day) - - + - - + @@ -14302,13 +14306,13 @@ L 924.961345 545.202609 L 968.664266 545.22375 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - + $27.10 The poverty line in United States* - + Income data from 2024 - + United States @@ -14317,7 +14321,12 @@ L 968.664266 545.22375 L 244.178616 56.58875 " style="fill: none; stroke-dasharray: 0.8,1.32; stroke-dashoffset: 0; stroke: #d3d3d3; stroke-width: 0.8"/> - + + + + International Poverty Line: $3.00 diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index fd366dd2..844d9ce2 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.142022 + 2026-05-22T18:50:25.296423 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 7dcd595b..67d2d5f5 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:20.516615 + 2026-05-22T18:50:35.119083 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 2e3fa333..af941b2d 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:25.838534 + 2026-05-22T18:50:41.628665 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 5e168f69..8c776dcc 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:20.574524 + 2026-05-22T18:50:35.178348 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - + + + + + + + + - - - - - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 0176bc20..8f749300 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:25.910715 + 2026-05-22T18:50:41.687985 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - + + + + + + + + - - - - - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index c1ee2aaf..a4f4c696 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:20.630363 + 2026-05-22T18:50:35.236371 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - + + - - - - - - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 3f67c788..96987b40 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:25.972274 + 2026-05-22T18:50:41.739930 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - + + - - - - - - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index 2bf55189..c70e7328 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:24.154291 + 2026-05-22T18:50:40.029558 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + - - + @@ -5521,7 +5521,7 @@ z - - + - - + - - + @@ -10233,12 +10233,12 @@ z - - + @@ -10248,7 +10248,7 @@ L 0 3.5 - + @@ -10258,7 +10258,7 @@ L 0 3.5 - + @@ -10268,7 +10268,7 @@ L 0 3.5 - + @@ -10278,7 +10278,7 @@ L 0 3.5 - + @@ -10288,7 +10288,7 @@ L 0 3.5 - + @@ -10298,7 +10298,7 @@ L 0 3.5 - + @@ -10308,7 +10308,7 @@ L 0 3.5 - + @@ -10318,7 +10318,7 @@ L 0 3.5 - + @@ -10328,173 +10328,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10505,7 +10505,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg index 26795681..e9276bc1 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:30.368183 + 2026-05-22T18:50:43.765321 image/svg+xml @@ -76,7 +76,7 @@ z - - + - - + - - + @@ -5526,7 +5526,7 @@ z - - + - - + - - + @@ -10239,12 +10239,12 @@ z - - + @@ -10254,7 +10254,7 @@ L 0 3.5 - + @@ -10264,7 +10264,7 @@ L 0 3.5 - + @@ -10274,7 +10274,7 @@ L 0 3.5 - + @@ -10284,7 +10284,7 @@ L 0 3.5 - + @@ -10294,7 +10294,7 @@ L 0 3.5 - + @@ -10304,7 +10304,7 @@ L 0 3.5 - + @@ -10314,7 +10314,7 @@ L 0 3.5 - + @@ -10324,7 +10324,7 @@ L 0 3.5 - + @@ -10334,180 +10334,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10518,7 +10518,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 81133195..eb43f952 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:09.262202 + 2026-05-22T18:50:26.414114 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,159 +156,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -319,7 +319,7 @@ L 0 2 - - + - - + + + + + + + + + International Poverty Line: $90 + + + World median: $289 + - + Country @@ -1169,7 +1185,7 @@ L 685.8 75.094187 z " style="fill: #4c72b0; fill-opacity: 0.25; stroke: #4c72b0; stroke-linejoin: miter"/> - + United States @@ -1180,7 +1196,7 @@ L 685.8 89.2395 z " style="fill: #dd8452; fill-opacity: 0.25; stroke: #dd8452; stroke-linejoin: miter"/> - + Burundi diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 01882295..69de4a07 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:09.335497 + 2026-05-22T18:50:26.485068 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,166 +156,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -326,7 +326,7 @@ L 0 2 - - + - - + + + + + + + - United States (2024) + International Poverty Line: $90 + World median: $289 + + + United States (2024) + + Burundi (2020) diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index bff725ac..00f6e725 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:10.604130 + 2026-05-22T18:50:27.681102 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imageb3f2ad5299" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/>
diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index 146c6be0..f1456c66 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:07.985112 + 2026-05-22T18:50:25.146458 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index bbb330ef..cf3f2187 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:08.060134 + 2026-05-22T18:50:25.216626 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 4367522f..621884d0 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:12:10.516395 + 2026-05-22T18:50:27.600589 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + + + + + + + + + International Poverty Line: $3.00 + + + World median: $9.65 + - + Region @@ -3242,7 +3258,7 @@ L 685.8 113.780312 z " style="fill: #4c72b0; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + East Asia and Pacific @@ -3253,7 +3269,7 @@ L 685.8 128.0475 z " style="fill: #dd8452; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Europe and Central Asia @@ -3264,7 +3280,7 @@ L 685.8 142.192812 z " style="fill: #55a868; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Latin America and Caribbean @@ -3275,7 +3291,7 @@ L 685.8 156.46 z " style="fill: #c44e52; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Middle East, North Africa, Afghanistan and Pakistan @@ -3286,7 +3302,7 @@ L 685.8 170.7225 z " style="fill: #8172b3; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + North America @@ -3297,7 +3313,7 @@ L 685.8 184.867812 z " style="fill: #937860; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + South Asia @@ -3308,7 +3324,7 @@ L 685.8 199.013125 z " style="fill: #da8bc3; fill-opacity: 0.75; stroke: #ffffff; stroke-linejoin: miter"/> - + Sub-Saharan Africa diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d667a09d..39c54128 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -459,6 +459,8 @@ def run() -> None: gridsize=GRIDSIZE_HIGHER_RESOLUTION, period="month", survey_based=False, + add_ipl=None, + add_world_median=None, add_multiple_lines_day=[3, 30], width=1150, height=220, @@ -510,8 +512,8 @@ def distributional_plots( survey_based: bool = False, preferred_reporting_level: Literal["national", "urban", "rural", None] = None, preferred_welfare_type: Literal["income", "consumption", None] = None, - add_ipl: Literal["line", "area", None] = None, - add_world_median: Literal["line", "area", None] = None, + add_ipl: Literal["line", "area", None] = "line", + add_world_median: Literal["line", "area", None] = "line", add_multiple_lines_day: List[float] = None, width: int = WIDTH, height: int = HEIGHT, @@ -808,14 +810,13 @@ def _filter_year(year_value): ) if add_multiple_lines_day is not None: - # Multiply the values by the period factor - add_multiple_lines_day = [ - value * period_factor for value in add_multiple_lines_day - ] + # Use a fresh local each iteration; otherwise the multiplied list + # leaks across years and the second year fills get multiplied again. + scaled_lines = [v * period_factor for v in add_multiple_lines_day] draw_area_under_curve( kde_plot=kde_plot, number_of_countries=number_of_countries, - values=add_multiple_lines_day, + values=scaled_lines, ) if legend: @@ -923,8 +924,8 @@ def distributional_plots_per_row( survey_based: bool = False, preferred_reporting_level: Literal["national", "urban", "rural", None] = None, preferred_welfare_type: Literal["income", "consumption", None] = None, - add_ipl: Literal["line", "area", None] = None, - add_world_median: Literal["line", "area", None] = None, + add_ipl: Literal["line", "area", None] = "line", + add_world_median: Literal["line", "area", None] = "line", add_national_lines: bool = False, df_national_lines: pd.DataFrame = None, width: int = WIDTH, From d7302043d99ee70cce2834c4f029f8ab94c2bda9 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Tue, 26 May 2026 12:04:59 +0100 Subject: [PATCH 34/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20expose=20share=5Fx=5Faxis/share=5Fy=5Faxis=20on?= =?UTF-8?q?=20per=5Frow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add share_x_axis and share_y_axis params (default True) to distributional_plots_per_row, forwarded to the year-rows helper, so callers can opt out of shared axes for mixed-spread comparisons. The Ethiopia / Bangladesh / Vietnam / Turkey / United States calls now pass share_y_axis=False so each country auto-scales its own y again (matching the main-branch look — sharing y was flattening the wider USA distribution). --- ..._common_norm_False_multiple_areas_none.svg | 112 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._multiple_layer_common_norm_False_rows.svg | 23677 +++++++-------- ..._multiple_layer_common_norm_False_rows.svg | 24639 ++++++++-------- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 86 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 86 +- ..._common_norm_False_multiple_areas_3_30.svg | 80 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 82 +- .../Sweden_per_year_row_log_True.svg | 104 +- ...Sweden_per_year_row_log_True_lognormal.svg | 106 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 82 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 106 +- .../distribution_generator.py | 22 +- 30 files changed, 25324 insertions(+), 25250 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 192d8852..acd68f35 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.417069 + 2026-05-26T12:01:57.950314 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index a6faedb7..560c3db4 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:27.770460 + 2026-05-26T12:02:00.507703 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 8b43eb1a..f3ebdd93 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.644764 + 2026-05-26T12:01:58.221329 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,173 +156,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -333,7 +333,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index d007662d..e4fe78b9 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.715643 + 2026-05-26T12:01:58.311098 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,180 +156,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -340,7 +340,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 56567f2d..ae34553a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.499666 + 2026-05-26T12:01:58.053671 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 1e545b5b..b2168f88 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.567980 + 2026-05-26T12:01:58.133608 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 22cbeaa9..641b99a1 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.794546 + 2026-05-26T12:01:58.403647 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 687e1551..ab823a90 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.864876 + 2026-05-26T12:01:58.482240 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,145 +156,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 0f1a7862..65fa980f 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.942380 + 2026-05-26T12:01:58.561227 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f98a4c32..b1c497fb 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.011422 + 2026-05-26T12:01:58.633333 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index a15c4c96..66eec516 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.090819 + 2026-05-26T12:01:58.712428 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index d94fc0b1..73976498 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.322986 + 2026-05-26T12:01:58.996326 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 18fbebff..f256b3cb 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.741758 + 2026-05-26T12:01:59.503861 image/svg+xml @@ -30,8 +30,8 @@ z - - - + - - + - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Ethiopia + Ethiopia World median: @@ -2856,10 +2857,10 @@ L 1055.759099 136.472164 - @@ -2900,2629 +2901,2629 @@ z - - + - - + - - - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Bangladesh + Bangladesh - @@ -5563,2507 +5564,2513 @@ z - - + - - + - - - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Vietnam + Vietnam - @@ -8104,2484 +8111,2496 @@ z - - + - - + - - - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Turkey + Turkey @@ -10589,12 +10608,12 @@ z - - + @@ -10604,7 +10623,7 @@ L 0 3.5 - + @@ -10614,7 +10633,7 @@ L 0 3.5 - + @@ -10624,7 +10643,7 @@ L 0 3.5 - + @@ -10634,7 +10653,7 @@ L 0 3.5 - + @@ -10644,7 +10663,7 @@ L 0 3.5 - + @@ -10654,7 +10673,7 @@ L 0 3.5 - + @@ -10664,7 +10683,7 @@ L 0 3.5 - + @@ -10674,7 +10693,7 @@ L 0 3.5 - + @@ -10684,7 +10703,7 @@ L 0 3.5 - + @@ -10694,159 +10713,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10857,1007 +10876,1007 @@ L 0 2 - - + - - + - @@ -13838,7 +13871,7 @@ L 1055.759099 545.22375 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* United States diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index ee1aaed9..4c0a6ebe 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.987155 + 2026-05-26T12:01:59.757694 image/svg+xml @@ -30,8 +30,8 @@ z - - - + - - + - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Consumption data from 2021 + Consumption data from 2021 - Ethiopia + Ethiopia World median: @@ -3000,10 +3000,10 @@ L 968.664266 136.472164 - @@ -3045,2765 +3045,2765 @@ z - - + - - + - - - $3.83 The poverty line in Bangladesh* + $3.83 The poverty line in Bangladesh* - Consumption data from 2022 + Consumption data from 2022 - Bangladesh + Bangladesh - @@ -5845,2633 +5845,2639 @@ z - - + - - + - - - $4.29 The poverty line in Vietnam* + $4.29 The poverty line in Vietnam* - Consumption data from 2022 + Consumption data from 2022 - Vietnam + Vietnam - @@ -8513,2599 +8519,2609 @@ z - - + - - + - - - $8.70 The poverty line in Turkey* + $8.70 The poverty line in Turkey* - Income data from 2023 + Income data from 2023 - Turkey + Turkey @@ -11113,12 +11129,12 @@ z - - + @@ -11128,7 +11144,7 @@ L 0 3.5 - + @@ -11138,7 +11154,7 @@ L 0 3.5 - + @@ -11148,7 +11164,7 @@ L 0 3.5 - + @@ -11158,7 +11174,7 @@ L 0 3.5 - + @@ -11168,7 +11184,7 @@ L 0 3.5 - + @@ -11178,7 +11194,7 @@ L 0 3.5 - + @@ -11188,7 +11204,7 @@ L 0 3.5 - + @@ -11198,7 +11214,7 @@ L 0 3.5 - + @@ -11208,7 +11224,7 @@ L 0 3.5 - + @@ -11218,166 +11234,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11388,1007 +11404,1007 @@ L 0 2 - - + - - + - @@ -14307,7 +14338,7 @@ L 968.664266 545.22375 " style="fill: none; stroke: #808080; stroke-width: 0.5; stroke-linecap: round"/> - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* Income data from 2024 diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 844d9ce2..eb5eaad6 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.296423 + 2026-05-26T12:01:57.678070 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 67d2d5f5..6e01f027 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:35.119083 + 2026-05-26T12:02:18.938173 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index af941b2d..bf52b78d 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:41.628665 + 2026-05-26T12:02:23.532069 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 8c776dcc..b0446eb3 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:35.178348 + 2026-05-26T12:02:19.039074 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 8f749300..acc46dd3 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:41.687985 + 2026-05-26T12:02:23.593783 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index a4f4c696..54048a97 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:35.236371 + 2026-05-26T12:02:19.105694 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 96987b40..22724d27 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:41.739930 + 2026-05-26T12:02:23.650042 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index c70e7328..24cf2221 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:40.029558 + 2026-05-26T12:02:21.950567 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + - - + @@ -5521,7 +5521,7 @@ z - - + - - + - - + @@ -10233,12 +10233,12 @@ z - - + @@ -10248,7 +10248,7 @@ L 0 3.5 - + @@ -10258,7 +10258,7 @@ L 0 3.5 - + @@ -10268,7 +10268,7 @@ L 0 3.5 - + @@ -10278,7 +10278,7 @@ L 0 3.5 - + @@ -10288,7 +10288,7 @@ L 0 3.5 - + @@ -10298,7 +10298,7 @@ L 0 3.5 - + @@ -10308,7 +10308,7 @@ L 0 3.5 - + @@ -10318,7 +10318,7 @@ L 0 3.5 - + @@ -10328,173 +10328,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10505,7 +10505,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg index e9276bc1..53e9f8a5 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:43.765321 + 2026-05-26T12:02:26.884248 image/svg+xml @@ -76,7 +76,7 @@ z - - + - - + - - + @@ -5526,7 +5526,7 @@ z - - + - - + - - + @@ -10239,12 +10239,12 @@ z - - + @@ -10254,7 +10254,7 @@ L 0 3.5 - + @@ -10264,7 +10264,7 @@ L 0 3.5 - + @@ -10274,7 +10274,7 @@ L 0 3.5 - + @@ -10284,7 +10284,7 @@ L 0 3.5 - + @@ -10294,7 +10294,7 @@ L 0 3.5 - + @@ -10304,7 +10304,7 @@ L 0 3.5 - + @@ -10314,7 +10314,7 @@ L 0 3.5 - + @@ -10324,7 +10324,7 @@ L 0 3.5 - + @@ -10334,180 +10334,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10518,7 +10518,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index eb43f952..5c660f05 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.414114 + 2026-05-26T12:01:59.158929 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,159 +156,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -319,7 +319,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 69de4a07..ac102ab8 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:26.485068 + 2026-05-26T12:01:59.235258 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,166 +156,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -326,7 +326,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 00f6e725..9bc03b3f 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:27.681102 + 2026-05-26T12:02:00.412148 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="image017e6db685" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/>
diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index f1456c66..bec0a07b 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.146458 + 2026-05-26T12:01:57.521047 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index cf3f2187..a7fe1bc7 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:25.216626 + 2026-05-26T12:01:57.593116 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 621884d0..0f63f57b 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-22T18:50:27.600589 + 2026-05-26T12:02:00.333692 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 39c54128..07715622 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -306,6 +306,7 @@ def run() -> None: add_ipl="line", add_national_lines=True, df_national_lines=df_national_lines, + share_y_axis=False, ) distributional_plots_per_row( @@ -328,6 +329,7 @@ def run() -> None: add_ipl="line", add_national_lines=True, df_national_lines=df_national_lines, + share_y_axis=False, ) # Stacked distributions with common density estimate @@ -936,6 +938,8 @@ def distributional_plots_per_row( add_multiple_lines_day: List[float] | None = None, add_high_income_pl: Literal["line", "area", None] = None, filename_suffix: str = "", + share_x_axis: bool = True, + share_y_axis: bool = True, ) -> None: """ Plot distributional data with seaborn, with each distribution in a separate row. @@ -969,6 +973,8 @@ def distributional_plots_per_row( add_fade_in_tails=add_fade_in_tails, percentiles_to_fade=percentiles_to_fade, filename_suffix=filename_suffix, + share_x_axis=share_x_axis, + share_y_axis=share_y_axis, ) return None @@ -1040,14 +1046,16 @@ def distributional_plots_per_row( ) # Create a figure with subplots for each country. Share both axes so peak - # heights are directly comparable between countries — mirrors the - # share_y_axis / share_x_axis behavior of distributional_plots. + # Share both axes by default so peak heights and x-range are directly + # comparable across rows. For mixed-spread comparisons (e.g. Ethiopia + # vs the United States) the caller can pass share_y_axis=False to let + # each country auto-scale its own y. fig, axes = plt.subplots( nrows=len(hue_order), ncols=1, figsize=(width / 100, height / 100), - sharex=True, - sharey=True, + sharex=share_x_axis, + sharey=share_y_axis, ) for ax, country in zip(axes, hue_order): @@ -1249,6 +1257,8 @@ def _distributional_plots_year_rows( add_fade_in_tails: bool = True, percentiles_to_fade: List[float] = [1, 99], filename_suffix: str = "", + share_x_axis: bool = True, + share_y_axis: bool = True, ) -> None: """ Private helper for ``distributional_plots_per_row(row_by="year")``: one country @@ -1328,8 +1338,8 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: nrows=len(years), ncols=1, figsize=(width / 100, height / 100 * len(years)), - sharex=True, - sharey=True, + sharex=share_x_axis, + sharey=share_y_axis, ) if len(years) == 1: axes = [axes] From f958dd81016ff7381a88c026710111c8f607cd43 Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Tue, 26 May 2026 12:52:41 +0100 Subject: [PATCH 35/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20refactor=20=5Fadd=5Ffigure=5Fspanning=5Fvline?= =?UTF-8?q?=5Flabel=20calls=20for=20clarity?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../distribution_generator.py | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 07715622..276b462e 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1207,7 +1207,9 @@ def distributional_plots_per_row( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) _add_figure_spanning_vline_label( - fig, axes, ipl, + fig, + axes, + ipl, f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", ) if add_world_median == "line": @@ -1220,7 +1222,9 @@ def distributional_plots_per_row( linewidth=0.8, ) _add_figure_spanning_vline_label( - fig, axes, world_median_year, + fig, + axes, + world_median_year, f"World median:\n${world_median_year:.{dollar_decimals}f}", ) @@ -1387,7 +1391,11 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: # IPL and high-income labels are constant across rows and rendered once # in the figure margin (below). World-median varies per year so its label # stays in the top row inline. - if ax is axes[0] and add_world_median == "line" and world_median_year is not None: + if ( + ax is axes[0] + and add_world_median == "line" + and world_median_year is not None + ): ax.text( x=world_median_year, y=ax.get_ylim()[1], @@ -1438,7 +1446,9 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) _add_figure_spanning_vline_label( - fig, axes, ipl, + fig, + axes, + ipl, f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", ) if add_high_income_pl == "line": @@ -1446,7 +1456,9 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: fig, axes, high_income_pl, color="lightgrey", linestyle=":", linewidth=0.8 ) _add_figure_spanning_vline_label( - fig, axes, high_income_pl, + fig, + axes, + high_income_pl, f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", ) From ef67ee1983abe0aef1e7e6d7cd97a230769c8d2d Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Tue, 26 May 2026 13:13:43 +0100 Subject: [PATCH 36/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20batch=20reference-line=20labels=20so=20they=20s?= =?UTF-8?q?hare=20a=20y=20level?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add _add_figure_spanning_vline_labels, a batched helper that decides inside/outside placement once for an entire batch of reference labels (based on the worst case). The EBVTUS multi-row IPL+median labels now align at the same height instead of one hanging inside axes[0] and the other floating above. Also adds a single-panel layered EBVTUS variant (distributional_plots), and casts period_factor/log_ticks in the per-row function to satisfy pyright. --- ..._common_norm_False_multiple_areas_none.svg | 112 +- ...26_survey_True_log_True_fill_False_pen.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 84 +- ..._common_norm_False_multiple_areas_none.svg | 86 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 76 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._common_norm_False_multiple_areas_none.svg | 72 +- ..._multiple_layer_common_norm_False_rows.svg | 972 ++++++++--------- ..._multiple_layer_common_norm_False_rows.svg | 976 +++++++++--------- ..._common_norm_False_multiple_areas_none.svg | 88 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 86 +- ..._common_norm_False_multiple_areas_3_30.svg | 84 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 86 +- ..._common_norm_False_multiple_areas_3_30.svg | 80 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 82 +- .../Sweden_per_year_row_log_True.svg | 104 +- ...Sweden_per_year_row_log_True_lognormal.svg | 106 +- ..._common_norm_False_multiple_areas_none.svg | 80 +- ..._common_norm_False_multiple_areas_none.svg | 82 +- ...6_survey_False_log_False_fill_True_pen.svg | 50 +- ...er_common_norm_False_multiple_areas_30.svg | 84 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 96 +- ...k_common_norm_True_multiple_areas_none.svg | 106 +- .../distribution_generator.py | 140 +-- 30 files changed, 2167 insertions(+), 2157 deletions(-) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index acd68f35..5bda6103 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:57.950314 + 2026-05-26T13:04:28.769194 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index 560c3db4..68f21fbd 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:00.507703 + 2026-05-26T13:04:33.822852 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index f3ebdd93..fab7b7e5 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.221329 + 2026-05-26T13:04:29.155306 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,173 +156,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -333,7 +333,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index e4fe78b9..9c7354bc 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.311098 + 2026-05-26T13:04:29.236081 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,180 +156,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -340,7 +340,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index ae34553a..4ebb6bbf 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.053671 + 2026-05-26T13:04:28.887371 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b2168f88..c40acecd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.133608 + 2026-05-26T13:04:29.054654 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 641b99a1..1ebf06e4 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.403647 + 2026-05-26T13:04:29.792837 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index ab823a90..fd853965 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.482240 + 2026-05-26T13:04:29.870621 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,145 +156,145 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 65fa980f..1163860a 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.561227 + 2026-05-26T13:04:29.974254 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index b1c497fb..1f2fad22 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.633333 + 2026-05-26T13:04:30.045827 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 66eec516..7b9075e6 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.712428 + 2026-05-26T13:04:30.127438 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 73976498..c897d3b8 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:58.996326 + 2026-05-26T13:04:31.392909 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index f256b3cb..3d3e4454 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,12 +1,12 @@ - + - 2026-05-26T12:01:59.503861 + 2026-05-26T13:04:32.133028 image/svg+xml @@ -21,8 +21,8 @@ - - @@ -74,7 +74,7 @@ z - - + - - + - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Ethiopia - - - World median: - $9.65 + Ethiopia - @@ -2901,7 +2897,7 @@ z - - + - - + - - - - $3.83 The poverty line in Bangladesh* + + $3.83 The poverty line in Bangladesh* - - Bangladesh + + Bangladesh - @@ -5564,7 +5560,7 @@ z - - + - - + - - - - $4.29 The poverty line in Vietnam* + + $4.29 The poverty line in Vietnam* - - Vietnam + + Vietnam - @@ -8111,7 +8107,7 @@ z - - + - - + - - - - $8.70 The poverty line in Turkey* + + $8.70 The poverty line in Turkey* - - Turkey + + Turkey - @@ -10608,275 +10604,275 @@ z - - + - - $1 + + $1 - + - - $2 + + $2 - + - - $5 + + $5 - + - - $10 + + $10 - + - - $20 + + $20 - + - - $50 + + $50 - + - - $100 + + $100 - + - - $200 + + $200 - + - - $500 + + $500 - + - - $1000 + + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - - - $27.10 The poverty line in United States* + + $27.10 The poverty line in United States* - - United States + + United States - - + + International + Poverty Line: + $3.00 + - International - Poverty Line: - $3.00 + World median: + $9.65 diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index 4c0a6ebe..dda485e6 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,12 +1,12 @@ - + - 2026-05-26T12:01:59.757694 + 2026-05-26T13:04:32.376609 image/svg+xml @@ -21,8 +21,8 @@ - - @@ -75,7 +75,7 @@ z - - + - - + - - - $2.59 The poverty line in Ethiopia* + $2.59 The poverty line in Ethiopia* - Consumption data from 2021 + Consumption data from 2021 - Ethiopia - - - World median: - $9.65 + Ethiopia - @@ -3045,7 +3041,7 @@ z - - + - - + - - + + $3.83 The poverty line in Bangladesh* + - $3.83 The poverty line in Bangladesh* + Consumption data from 2022 - Consumption data from 2022 - - - Bangladesh + Bangladesh - @@ -5845,7 +5841,7 @@ z - - + - - + - - + + $4.29 The poverty line in Vietnam* + - $4.29 The poverty line in Vietnam* + Consumption data from 2022 - Consumption data from 2022 - - - Vietnam + Vietnam - @@ -8519,7 +8515,7 @@ z - - + - - + - - + + $8.70 The poverty line in Turkey* + - $8.70 The poverty line in Turkey* + Income data from 2023 - Income data from 2023 - - - Turkey + Turkey - @@ -11129,282 +11125,282 @@ z - - + - - $1 + + $1 - + - - $2 + + $2 - + - - $5 + + $5 - + - - $10 + + $10 - + - - $20 + + $20 - + - - $50 + + $50 - + - - $100 + + $100 - + - - $200 + + $200 - + - - $500 + + $500 - + - - $1000 + + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - Income or consumption (day) + + Income or consumption (day) - - + - - + - - + + $27.10 The poverty line in United States* + - $27.10 The poverty line in United States* + Income data from 2024 - Income data from 2024 - - - United States + United States - - + + International + Poverty Line: + $3.00 + - International - Poverty Line: - $3.00 + World median: + $9.65 diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index eb5eaad6..5c49ed2f 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:57.678070 + 2026-05-26T13:04:28.530924 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 6e01f027..00655515 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:18.938173 + 2026-05-26T13:04:52.332049 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index bf52b78d..519f660a 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:23.532069 + 2026-05-26T13:04:56.178472 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index b0446eb3..9d40bdd6 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:19.039074 + 2026-05-26T13:04:52.386251 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index acc46dd3..3b89748c 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:23.593783 + 2026-05-26T13:04:56.280027 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 54048a97..5caac7f7 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:19.105694 + 2026-05-26T13:04:52.437958 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 22724d27..2854bb97 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:23.650042 + 2026-05-26T13:04:56.367701 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index 24cf2221..005ece11 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:21.950567 + 2026-05-26T13:04:54.595497 image/svg+xml @@ -75,7 +75,7 @@ z - - + - - + - - + @@ -5521,7 +5521,7 @@ z - - + - - + - - + @@ -10233,12 +10233,12 @@ z - - + @@ -10248,7 +10248,7 @@ L 0 3.5 - + @@ -10258,7 +10258,7 @@ L 0 3.5 - + @@ -10268,7 +10268,7 @@ L 0 3.5 - + @@ -10278,7 +10278,7 @@ L 0 3.5 - + @@ -10288,7 +10288,7 @@ L 0 3.5 - + @@ -10298,7 +10298,7 @@ L 0 3.5 - + @@ -10308,7 +10308,7 @@ L 0 3.5 - + @@ -10318,7 +10318,7 @@ L 0 3.5 - + @@ -10328,173 +10328,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10505,7 +10505,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg index 53e9f8a5..75d65921 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:26.884248 + 2026-05-26T13:04:58.682859 image/svg+xml @@ -76,7 +76,7 @@ z - - + - - + - - + @@ -5526,7 +5526,7 @@ z - - + - - + - - + @@ -10239,12 +10239,12 @@ z - - + @@ -10254,7 +10254,7 @@ L 0 3.5 - + @@ -10264,7 +10264,7 @@ L 0 3.5 - + @@ -10274,7 +10274,7 @@ L 0 3.5 - + @@ -10284,7 +10284,7 @@ L 0 3.5 - + @@ -10294,7 +10294,7 @@ L 0 3.5 - + @@ -10304,7 +10304,7 @@ L 0 3.5 - + @@ -10314,7 +10314,7 @@ L 0 3.5 - + @@ -10324,7 +10324,7 @@ L 0 3.5 - + @@ -10334,180 +10334,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10518,7 +10518,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5c660f05..03b39cf1 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:59.158929 + 2026-05-26T13:04:31.516252 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,159 +156,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -319,7 +319,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index ac102ab8..87b923b3 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:59.235258 + 2026-05-26T13:04:31.809324 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,166 +156,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -326,7 +326,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 9bc03b3f..084eceb7 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:00.412148 + 2026-05-26T13:04:33.690794 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="imagec269df8b98" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index bec0a07b..f854c382 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:57.521047 + 2026-05-26T13:04:28.281621 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index a7fe1bc7..024457ea 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:01:57.593116 + 2026-05-26T13:04:28.408642 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 0f63f57b..5882c60c 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,7 +6,7 @@ - 2026-05-26T12:02:00.333692 + 2026-05-26T13:04:33.596360 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index 276b462e..d52e3562 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -1014,9 +1014,11 @@ def distributional_plots_per_row( else: filename = "multiple_countries" - # Define the income period values - period_factor = PERIOD_VALUES[period]["factor"] - log_ticks = PERIOD_VALUES[period]["log_ticks"] + # Define the income period values. PERIOD_VALUES mixes int factors with + # list log_ticks under the same dict, so cast each lookup back to its + # concrete type. + period_factor = cast(int, PERIOD_VALUES[period]["factor"]) + log_ticks = cast(List[int], PERIOD_VALUES[period]["log_ticks"]) dollar_decimals = 2 if period == "day" else 0 data[x] = data[x] * period_factor @@ -1202,15 +1204,13 @@ def distributional_plots_per_row( plt.tight_layout() + reference_labels: list[tuple[float, str]] = [] if add_ipl == "line": _add_figure_spanning_vline( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) - _add_figure_spanning_vline_label( - fig, - axes, - ipl, - f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", + reference_labels.append( + (ipl, f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}") ) if add_world_median == "line": _add_figure_spanning_vline( @@ -1221,12 +1221,13 @@ def distributional_plots_per_row( linestyle=":", linewidth=0.8, ) - _add_figure_spanning_vline_label( - fig, - axes, - world_median_year, - f"World median:\n${world_median_year:.{dollar_decimals}f}", + reference_labels.append( + ( + world_median_year, + f"World median:\n${world_median_year:.{dollar_decimals}f}", + ) ) + _add_figure_spanning_vline_labels(fig, axes, reference_labels) # Remove the clipping of the figure for o in fig.findobj(): @@ -1441,26 +1442,25 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: # Lay out first so axes positions are stable before placing the spanning lines. fig.tight_layout() + reference_labels: list[tuple[float, str]] = [] if add_ipl == "line": _add_figure_spanning_vline( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) - _add_figure_spanning_vline_label( - fig, - axes, - ipl, - f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}", + reference_labels.append( + (ipl, f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}") ) if add_high_income_pl == "line": _add_figure_spanning_vline( fig, axes, high_income_pl, color="lightgrey", linestyle=":", linewidth=0.8 ) - _add_figure_spanning_vline_label( - fig, - axes, - high_income_pl, - f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", + reference_labels.append( + ( + high_income_pl, + f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", + ) ) + _add_figure_spanning_vline_labels(fig, axes, reference_labels) for o in fig.findobj(): o.set_clip_on(False) @@ -2268,60 +2268,70 @@ def _add_figure_spanning_vline(fig, axes, x, **kwargs) -> None: fig.add_artist(line) -def _add_figure_spanning_vline_label(fig, axes, x, text) -> None: - """Place a label for a figure-spanning vertical reference line near the - top of the topmost subplot, anchored at data x. - - The label sits *inside* axes[0] hanging from its top edge when there's - visual room (curve density at x is small relative to ylim), or *above* - axes[0] in the figure margin when the topmost curve is too tall at that x - to avoid overlap. Sweden 1820 at the IPL is an example of the first case; - Ethiopia at the IPL is an example of the second. +def _add_figure_spanning_vline_labels(fig, axes, labels) -> None: + """Place a batch of figure-spanning reference-line labels at the same + vertical level. ``labels`` is an iterable of ``(x, text)`` tuples. + + If any label's x lands in a region where the topmost curve leaves less + than half the axes height free above it (e.g. Ethiopia at the IPL), ALL + labels in the batch are placed *above* axes[0] in the figure margin so + they line up. Otherwise (e.g. Sweden 1820 at the IPL) they all hang from + the top edge of axes[0]. """ from matplotlib.text import Text from matplotlib.transforms import blended_transform_factory + label_list = list(labels) + if not label_list: + return + ax = axes[0] - inside_room = True + use_outside = False if ax.lines: xs = np.asarray(ax.lines[0].get_data()[0]) ys = np.asarray(ax.lines[0].get_data()[1]) if xs.size and ys.size: order = np.argsort(xs) - y_at_x = float(np.interp(x, xs[order], ys[order])) ylim_max = ax.get_ylim()[1] - # Allow the label inside only if the curve at x leaves ≥50% of - # axes height free above it for the rotated label to hang into. - if ylim_max > 0 and y_at_x > 0.5 * ylim_max: - inside_room = False + for x, _ in label_list: + y_at_x = float(np.interp(x, xs[order], ys[order])) + if ylim_max > 0 and y_at_x > 0.5 * ylim_max: + use_outside = True + break + + for x, text in label_list: + if use_outside: + trans = blended_transform_factory(ax.transData, fig.transFigure) + label = Text( + x=x, + y=ax.get_position().y1 + 0.005, + text=text, + transform=trans, + color="grey", + rotation=90, + verticalalignment="bottom", + horizontalalignment="left", + fontsize=8, + ) + fig.add_artist(label) + else: + trans = blended_transform_factory(ax.transData, ax.transAxes) + ax.text( + x=x, + y=1.0, + s=text, + transform=trans, + color="grey", + rotation=90, + verticalalignment="top", + horizontalalignment="left", + fontsize=8, + ) - if inside_room: - trans = blended_transform_factory(ax.transData, ax.transAxes) - ax.text( - x=x, - y=1.0, - s=text, - transform=trans, - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) - else: - trans = blended_transform_factory(ax.transData, fig.transFigure) - label = Text( - x=x, - y=ax.get_position().y1 + 0.005, - text=text, - transform=trans, - color="grey", - rotation=90, - verticalalignment="bottom", - horizontalalignment="left", - fontsize=8, - ) - fig.add_artist(label) + +def _add_figure_spanning_vline_label(fig, axes, x, text) -> None: + """Single-label convenience wrapper around :func:`_add_figure_spanning_vline_labels`.""" + _add_figure_spanning_vline_labels(fig, axes, [(x, text)]) def draw_complete_area_under_curve( From 8104301cc0a9fc37040ca8422cef638819fd4b0c Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Tue, 26 May 2026 17:14:41 +0100 Subject: [PATCH 37/38] Refactor code structure for improved readability and maintainability --- ..._common_norm_False_multiple_areas_none.svg | 14980 +++++----- ...26_survey_True_log_True_fill_False_pen.svg | 78 +- ...er_common_norm_False_multiple_areas_3.svg} | 2239 +- ...er_common_norm_False_multiple_areas_3.svg} | 2223 +- ...er_common_norm_False_multiple_areas_3.svg} | 2162 +- ...er_common_norm_False_multiple_areas_3.svg} | 2135 +- ...er_common_norm_False_multiple_areas_3.svg} | 2210 +- ...er_common_norm_False_multiple_areas_3.svg} | 2180 +- ...er_common_norm_False_multiple_areas_3.svg} | 2174 +- ...er_common_norm_False_multiple_areas_3.svg} | 2148 +- ...er_common_norm_False_multiple_areas_3.svg} | 2172 +- ...er_common_norm_False_multiple_areas_3.svg} | 2107 +- ..._multiple_layer_common_norm_False_rows.svg | 21805 +++++++-------- ..._multiple_layer_common_norm_False_rows.svg | 22863 ++++++++-------- ..._common_norm_False_multiple_areas_none.svg | 2277 +- ..._common_norm_False_multiple_areas_3_30.svg | 6688 ++--- ...rm_False_multiple_areas_3_30_lognormal.svg | 6690 ++--- ..._common_norm_False_multiple_areas_3_30.svg | 5300 ++-- ...rm_False_multiple_areas_3_30_lognormal.svg | 5302 ++-- ..._common_norm_False_multiple_areas_3_30.svg | 2021 +- ...rm_False_multiple_areas_3_30_lognormal.svg | 1323 +- .../Sweden_per_year_row_log_True.svg | 21089 +++++++------- ...Sweden_per_year_row_log_True_lognormal.svg | 21093 +++++++------- ...er_common_norm_False_multiple_areas_3.svg} | 2248 +- ...er_common_norm_False_multiple_areas_3.svg} | 2219 +- ...6_survey_False_log_False_fill_True_pen.svg | 52 +- ...er_common_norm_False_multiple_areas_30.svg | 2566 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 8820 +++--- ...k_common_norm_True_multiple_areas_none.svg | 3052 ++- .../distribution_generator.py | 273 +- 30 files changed, 88748 insertions(+), 83741 deletions(-) rename PabloArriagada/distribution_generator/{Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (58%) rename PabloArriagada/distribution_generator/{Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (58%) rename PabloArriagada/distribution_generator/{Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (61%) rename PabloArriagada/distribution_generator/{Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (61%) rename PabloArriagada/distribution_generator/{Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (59%) rename PabloArriagada/distribution_generator/{Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (60%) rename PabloArriagada/distribution_generator/{Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (61%) rename PabloArriagada/distribution_generator/{Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (61%) rename PabloArriagada/distribution_generator/{Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (61%) rename PabloArriagada/distribution_generator/{Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (62%) rename PabloArriagada/distribution_generator/{United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (57%) rename PabloArriagada/distribution_generator/{United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (58%) diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5bda6103..dba50b43 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:28.769194 + 2026-05-26T16:01:53.366313 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index 68f21fbd..f93f4ce0 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:33.822852 + 2026-05-26T16:01:57.351570 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 58% rename from PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index fab7b7e5..24dc73f3 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:29.155306 + 2026-05-26T16:01:53.688629 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1177 +41,1594 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - - Country + Country - - + + - Denmark + Denmark - - + + - Democratic Republic of Congo + Democratic Republic of Congo diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 58% rename from PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 9c7354bc..1d3da1f7 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:29.236081 + 2026-05-26T16:01:53.819824 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1151 +41,1598 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - Denmark (2023) + Denmark (2023) - Democratic Republic of Congo (2020) + Democratic Republic of Congo (2020) diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 61% rename from PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 4ebb6bbf..5bb2b1d3 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:28.887371 + 2026-05-26T16:01:53.486359 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1135 +41,1487 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - - Country + Country - - + + - Denmark + Denmark - - + + - Ethiopia + Ethiopia diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 61% rename from PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index c40acecd..5bd3ecb0 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:29.054654 + 2026-05-26T16:01:53.580543 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1102 +41,1475 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - Denmark (2023) + Denmark (2023) - Ethiopia (2021) + Ethiopia (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 59% rename from PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 1ebf06e4..a8d5c1fb 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:29.792837 + 2026-05-26T16:01:53.936357 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1135 +41,1535 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - - Country + Country - - + + - Denmark + Denmark - - + + - Madagascar + Madagascar diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 60% rename from PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index fd853965..bff8abce 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:29.870621 + 2026-05-26T16:01:54.032945 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1116 +41,1530 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - Denmark (2023) + Denmark (2023) - Madagascar (2021) + Madagascar (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 61% rename from PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 1163860a..ab7bcbe7 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:29.974254 + 2026-05-26T16:01:54.153640 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1135 +41,1499 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - - Country + Country - - + + - Denmark + Denmark - - + + - Niger + Niger diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 61% rename from PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 1f2fad22..9affc377 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:30.045827 + 2026-05-26T16:01:55.240287 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1102 +41,1488 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - Denmark (2023) + Denmark (2023) - Niger (2021) + Niger (2021) diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 61% rename from PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 7b9075e6..db3ba36d 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:30.127438 + 2026-05-26T16:01:55.370391 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1135 +41,1497 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - - Country + Country - - + + - Denmark + Denmark - - + + - Syria + Syria diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 62% rename from PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index c897d3b8..e6f0a9ee 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:31.392909 + 2026-05-26T16:01:55.462948 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1102 +41,1447 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - Denmark (2023) + Denmark (2023) - Syria (2022) + Syria (2022) diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index 3d3e4454..f66a04e0 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:32.133028 + 2026-05-26T16:01:56.061301 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -74,7 +74,7 @@ z - - + - - - - - - - - - - - - - - $2.59 The poverty line in Ethiopia* - - - Ethiopia - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $3.83 The poverty line in Bangladesh* - - - Bangladesh - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $4.29 The poverty line in Vietnam* - - - Vietnam - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $8.70 The poverty line in Turkey* - - - Turkey - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - + + + + + + + + + + + + + $2.59 The poverty line in Ethiopia* + + + Ethiopia + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $3.83 The poverty line in Bangladesh* + + + Bangladesh + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $4.29 The poverty line in Vietnam* + + + Vietnam + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + + + + + + + + + + + $8.70 The poverty line in Turkey* + + + Turkey + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) - + + - +" style="stroke: #4c72b0; stroke-opacity: 0.2"/> + + + + + + + + - + - - - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - United States + United States - - - - International - Poverty Line: - $3.00 + + + International Poverty Line + + + $3.00 per day + - - World median: - $9.65 + + + World median + + + $9.65 per day + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index dda485e6..a457195d 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:32.376609 + 2026-05-26T16:01:56.446050 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -75,7 +75,7 @@ z - - + - - - - - - - - - - - - - - $2.59 The poverty line in Ethiopia* - - - Consumption data from 2021 - - - Ethiopia - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $3.83 The poverty line in Bangladesh* - - - Consumption data from 2022 - - - Bangladesh - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $4.29 The poverty line in Vietnam* - - - Consumption data from 2022 - - - Vietnam - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $8.70 The poverty line in Turkey* - - - Income data from 2023 - - - Turkey - - - - - - - - - - - - - - - - - - $1 - - - - - - - - - - $2 - - - - - - - - - - $5 - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - + + + + + + + + + + + + + $2.59 The poverty line in Ethiopia* + + + Consumption data from 2021 + + + Ethiopia + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $3.83 The poverty line in Bangladesh* + + + Consumption data from 2022 + + + Bangladesh + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $4.29 The poverty line in Vietnam* + + + Consumption data from 2022 + + + Vietnam + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + + + + + + + + + + + $8.70 The poverty line in Turkey* + + + Income data from 2023 + + + Turkey + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + $2 + + + + + + + + + + $5 + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (day) - + + - +" style="stroke: #4c72b0; stroke-opacity: 0.2"/> + + + + + + + + - + - - - $27.10 The poverty line in United States* + $27.10 The poverty line in United States* - Income data from 2024 + Income data from 2024 - United States + United States - - - - International - Poverty Line: - $3.00 + + + International Poverty Line + + + $3.00 per day + - - World median: - $9.65 + + + World median + + + $9.65 per day + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index 5c49ed2f..d15bb5cc 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:28.530924 + 2026-05-26T16:01:53.181802 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 00655515..ccba3022 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:52.332049 + 2026-05-26T16:02:15.262620 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - - - - - - - - + + + + + + + + +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 519f660a..99cd5cb0 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:56.178472 + 2026-05-26T16:02:23.956852 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - - - - - - - - + + + + + + + + +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 9d40bdd6..7279e0b5 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:52.386251 + 2026-05-26T16:02:15.329492 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - - - - - - - - + + + + + + + + +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 3b89748c..07b28875 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:56.280027 + 2026-05-26T16:02:24.021537 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - - - - - - - - + + + + + + + + +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 5caac7f7..408c567e 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:52.437958 + 2026-05-26T16:02:15.408530 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,173 +136,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -313,7 +313,7 @@ L 0 2 - - + - - + - +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 2854bb97..87303608 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:56.367701 + 2026-05-26T16:02:24.091310 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,180 +136,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -320,7 +320,7 @@ L 0 2 - - + - - + - +"/> - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index 005ece11..a5b84eca 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:54.595497 + 2026-05-26T16:02:21.751536 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -75,7 +75,7 @@ z - - + - - - - - - - - - - - - - - - - - - - - - - Sweden (1820) - - - International - Poverty Line: - $90 - - - High-income - Poverty Line: - $900 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Sweden (1920) - - - - - - - - - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - $2000 - - - - - - - - - - $5000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (month) - - - - - - + + + + + + + + + + + + + + + + + + + + + Sweden (1820) + + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + + + + + + + + + + + Sweden (1920) + + + + + + + + + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + $2000 + + + + + + + + + + $5000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (month) - - + + - +" style="stroke: #4c72b0; stroke-opacity: 0.2"/> + + + + + + + + - + - - - - Sweden (2026) + + Sweden (2026) - - diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg index 75d65921..19081cca 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:58.682859 + 2026-05-26T16:02:29.704063 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -76,7 +76,7 @@ z - - + - - - - - - - - - - - - - - - - - - - - - - Sweden (1820) - - - International - Poverty Line: - $90 - - - High-income - Poverty Line: - $900 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Sweden (1920) - - - - - - - - - - - - - - - - - - $10 - - - - - - - - - - $20 - - - - - - - - - - $50 - - - - - - - - - - $100 - - - - - - - - - - $200 - - - - - - - - - - $500 - - - - - - - - - - $1000 - - - - - - - - - - $2000 - - - - - - - - - - $5000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (month) - - - - - - + + + + + + + + + + + + + + + + + + + + + Sweden (1820) + + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + + + + + + + + + + + Sweden (1920) + + + + + + + + + + + + + + + + + + $10 + + + + + + + + + + $20 + + + + + + + + + + $50 + + + + + + + + + + $100 + + + + + + + + + + $200 + + + + + + + + + + $500 + + + + + + + + + + $1000 + + + + + + + + + + $2000 + + + + + + + + + + $5000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Income or consumption (month) - - + + - +" style="stroke: #4c72b0; stroke-opacity: 0.2"/> + + + + + + + + - + - - - - Sweden (2026) + + Sweden (2026) - - diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 57% rename from PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 03b39cf1..b3dfbe6e 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:31.516252 + 2026-05-26T16:01:55.640266 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1081 +41,1357 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - - Country + Country - - + + - United States + United States - - + + - Burundi + Burundi diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 58% rename from PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 87b923b3..3255b612 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:31.809324 + 2026-05-26T16:01:55.732808 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,1098 +41,1366 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + - + - + - + - - International Poverty Line: $90 + + - - World median: $289 + + + International Poverty Line + + + $90 per month + - United States (2024) + United States (2024) - Burundi (2020) + Burundi (2020) diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 084eceb7..4a96a410 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:33.690794 + 2026-05-26T16:01:57.161659 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58ACS9cTp3fwQA/AXq+PwLAJtZTwAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFQJJAAZAkUAAkCRQASQIFwBQ9mUIF7NEjml0AAAAASUVORK5CYII=" id="imagec67a5e1100" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index f854c382..a17a9a7a 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:28.281621 + 2026-05-26T16:01:52.659702 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - +"/> - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index 024457ea..a7529bae 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,11 +6,11 @@ - 2026-05-26T13:04:28.408642 + 2026-05-26T16:01:52.962971 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +"/> - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index 5882c60c..f11318ac 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T13:04:33.596360 + 2026-05-26T16:01:57.060809 image/svg+xml - Matplotlib v3.10.9, https://matplotlib.org/ + Matplotlib v3.10.1, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,303 +41,303 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - + - - + - - + - - + - - + - - - - - International Poverty Line: $3.00 + + + International Poverty Line + + + $3.00 per day + - - World median: $9.65 + + + World median + + + $9.65 per day + - - - Region + + Region - - - East Asia and Pacific + + East Asia and Pacific - - - Europe and Central Asia + + Europe and Central Asia - - - Latin America and Caribbean + + Latin America and Caribbean - - - Middle East, North Africa, Afghanistan and Pakistan + + Middle East, North Africa, Afghanistan and Pakistan - - - North America + + North America - - - South Asia + + South Asia - - - Sub-Saharan Africa + + Sub-Saharan Africa diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d52e3562..d004a88e 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -267,6 +267,10 @@ def run() -> None: survey_based=False, width=1500, height=400, + add_multiple_lines_day=[3], + fill=False, + add_ipl="line", + add_world_median=None, ) distributional_plots( data=df_percentiles, @@ -286,6 +290,10 @@ def run() -> None: preferred_welfare_type="income", width=1500, height=400, + add_multiple_lines_day=[3], + fill=False, + add_ipl="line", + add_world_median=None, ) distributional_plots_per_row( @@ -516,6 +524,7 @@ def distributional_plots( preferred_welfare_type: Literal["income", "consumption", None] = None, add_ipl: Literal["line", "area", None] = "line", add_world_median: Literal["line", "area", None] = "line", + add_high_income_pl: Literal["line", "area", None] = None, add_multiple_lines_day: List[float] = None, width: int = WIDTH, height: int = HEIGHT, @@ -582,9 +591,11 @@ def distributional_plots( else: filename_multiple_areas = "none" - # Define the income period values - period_factor = PERIOD_VALUES[period]["factor"] - log_ticks = PERIOD_VALUES[period]["log_ticks"] + # Define the income period values. PERIOD_VALUES mixes int factors with + # list log_ticks under the same dict, so cast each lookup back to its + # concrete type. + period_factor = cast(int, PERIOD_VALUES[period]["factor"]) + log_ticks = cast(List[int], PERIOD_VALUES[period]["log_ticks"]) # Cents only make sense at the daily scale; monthly and yearly values are # large enough that the decimal noise is distracting (matches pen_parade). dollar_decimals = 2 if period == "day" else 0 @@ -770,15 +781,13 @@ def _filter_year(year_value): linestyle=":", linewidth=0.8, ) - plt.text( - x=ipl, # x-coordinate for the text - y=plt.ylim()[1] - * 0.99, # y-coordinate for the text, positioned near the top of the plot - s=f"International Poverty Line: ${ipl:.{dollar_decimals}f}", # Text string to display - color="grey", # Color of the text - rotation=90, # Rotate the text 90 degrees - verticalalignment="top", # Align the text vertically at the top - fontsize=8, # Font size of the text + _styled_reference_label( + kde_plot, + ipl, + plt.ylim()[1], + title="International Poverty Line", + value=f"${ipl:.{dollar_decimals}f} per {period}", + ha="right", ) elif add_ipl == "area": draw_area_under_curve( @@ -795,14 +804,13 @@ def _filter_year(year_value): linestyle=":", linewidth=0.8, ) - plt.text( - x=world_median_year, - y=plt.ylim()[1] * 0.99, - s=f"World median: ${world_median_year:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - fontsize=8, + _styled_reference_label( + kde_plot, + world_median_year, + plt.ylim()[1], + title="World median", + value=f"${world_median_year:.{dollar_decimals}f} per {period}", + ha="left", ) elif add_world_median == "area" and df_main_indicators is not None: draw_area_under_curve( @@ -811,6 +819,29 @@ def _filter_year(year_value): values=[world_median_year], ) + high_income_pl = POVERTY_LINE_HIGH_INCOME * period_factor + if add_high_income_pl == "line": + plt.axvline( + x=high_income_pl, + color="lightgrey", + linestyle=":", + linewidth=0.8, + ) + _styled_reference_label( + kde_plot, + high_income_pl, + plt.ylim()[1], + title="High-income poverty line", + value=f"${high_income_pl:.{dollar_decimals}f} per {period}", + ha="left", + ) + elif add_high_income_pl == "area": + draw_area_under_curve( + kde_plot=kde_plot, + number_of_countries=number_of_countries, + values=[high_income_pl], + ) + if add_multiple_lines_day is not None: # Use a fresh local each iteration; otherwise the multiplied list # leaks across years and the second year fills get multiplied again. @@ -1204,13 +1235,18 @@ def distributional_plots_per_row( plt.tight_layout() - reference_labels: list[tuple[float, str]] = [] + reference_labels: list[tuple[float, str, str, str]] = [] if add_ipl == "line": _add_figure_spanning_vline( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) reference_labels.append( - (ipl, f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}") + ( + ipl, + "International Poverty Line", + f"${ipl:.{dollar_decimals}f} per {period}", + "right", + ) ) if add_world_median == "line": _add_figure_spanning_vline( @@ -1224,7 +1260,9 @@ def distributional_plots_per_row( reference_labels.append( ( world_median_year, - f"World median:\n${world_median_year:.{dollar_decimals}f}", + "World median", + f"${world_median_year:.{dollar_decimals}f} per {period}", + "left", ) ) _add_figure_spanning_vline_labels(fig, axes, reference_labels) @@ -1397,15 +1435,14 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: and add_world_median == "line" and world_median_year is not None ): - ax.text( - x=world_median_year, - y=ax.get_ylim()[1], - s=f"World median:\n${world_median_year:.{dollar_decimals}f}", - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, + _styled_reference_label( + ax, + world_median_year, + ax.get_ylim()[1], + title="World median", + value=f"${world_median_year:.{dollar_decimals}f} per {period}", + ha="left", + box_alignment=(0.0, 1.0), ) ax.text( @@ -1442,13 +1479,18 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: # Lay out first so axes positions are stable before placing the spanning lines. fig.tight_layout() - reference_labels: list[tuple[float, str]] = [] + reference_labels: list[tuple[float, str, str, str]] = [] if add_ipl == "line": _add_figure_spanning_vline( fig, axes, ipl, color="lightgrey", linestyle=":", linewidth=0.8 ) reference_labels.append( - (ipl, f"International\nPoverty Line:\n${ipl:.{dollar_decimals}f}") + ( + ipl, + "International Poverty Line", + f"${ipl:.{dollar_decimals}f} per {period}", + "right", + ) ) if add_high_income_pl == "line": _add_figure_spanning_vline( @@ -1457,7 +1499,9 @@ def _fade(sub: pd.DataFrame) -> pd.DataFrame: reference_labels.append( ( high_income_pl, - f"High-income\nPoverty Line:\n${high_income_pl:.{dollar_decimals}f}", + "High-income poverty line", + f"${high_income_pl:.{dollar_decimals}f} per {period}", + "left", ) ) _add_figure_spanning_vline_labels(fig, axes, reference_labels) @@ -1803,7 +1847,7 @@ def axhline_over_curve(y_value): linewidth=0.8, ) - # International poverty line + # International Poverty Line axhline_over_curve(ipl) reference_ticks.append((ipl, f"← ${ipl:.{dollar_decimals}f} per {period}")) @@ -2232,18 +2276,40 @@ def draw_area_under_curve( # Obtain the line of the kde_plot line = kde_plot.lines[i] - # Obtain the x and y data of the line - x_line, y_line = line.get_data() - - # interpolate=True extends the fill to the exact x where the `where` - # condition flips, rather than ending at the nearest KDE grid point. + # Obtain the x and y data of the line. Coerce to ndarray because + # `Line2D.get_data` returns whatever was originally set — sometimes + # a plain list — and the `<=` comparison below requires array math. + x_line = np.asarray(line.get_data()[0], dtype=float) + y_line = np.asarray(line.get_data()[1], dtype=float) + + # Build the polygon explicitly so it terminates at exactly x=value. + # matplotlib's `where=(x_line <= value)` with `interpolate=True` only + # interpolates `y1` vs `y2` crossings, not the where boundary on x — + # so without this manual construction the polygon snaps to the last + # grid point ≤ value, leaving a visible gap between the fill edge + # and the reference line at x=value. + order = np.argsort(x_line) + xs_sorted = x_line[order] + ys_sorted = y_line[order] + if xs_sorted.size == 0 or value <= xs_sorted[0]: + continue + inside = xs_sorted < value + if inside.any(): + fill_xs = np.append(xs_sorted[inside], value) + fill_ys = np.append( + ys_sorted[inside], + float(np.interp(value, xs_sorted, ys_sorted)), + ) + else: + # Entire grid is at or past `value` — nothing to fill. + continue kde_plot.fill_between( - x=x_line, - y1=y_line, - where=(x_line <= value), - interpolate=True, + x=fill_xs, + y1=0, + y2=fill_ys, alpha=0.3, color=line.get_color(), + linewidth=0, ) return None @@ -2268,17 +2334,67 @@ def _add_figure_spanning_vline(fig, axes, x, **kwargs) -> None: fig.add_artist(line) +def _styled_reference_label( + parent, + x, + y, + title: str, + value: str, + ha: str, + xycoords="data", + box_alignment=None, +) -> None: + """Render a reference-line label as a bold *title* (one or more lines, + separated by ``\\n``) stacked above a regular-weight *value* line. + + ``parent`` is any matplotlib artist container that accepts ``add_artist`` + (an Axes or a Figure). ``x``/``y`` are in the coordinate system named by + ``xycoords`` ("data", "axes fraction", "figure fraction", etc.). ``ha`` + determines the horizontal alignment of each text row and whether the + label sits to the left ("right") or to the right ("left") of the anchor. + """ + from matplotlib.offsetbox import AnnotationBbox, TextArea, VPacker + + common = { + "color": "grey", + "fontsize": 8, + "ha": ha, + "multialignment": ha, + } + children = [ + TextArea(line, textprops={**common, "fontweight": "bold"}) + for line in title.split("\n") + ] + children.append(TextArea(value, textprops=common)) + packer = VPacker(children=children, align=ha, pad=0, sep=2) + if box_alignment is None: + # Anchor by the bottom edge, and by the left or right edge depending on ha. + box_alignment = (1.0 if ha == "right" else 0.0, 0.0) + annotation = AnnotationBbox( + packer, + (x, y), + xycoords=xycoords, + box_alignment=box_alignment, + frameon=False, + pad=0, + ) + parent.add_artist(annotation) + + def _add_figure_spanning_vline_labels(fig, axes, labels) -> None: """Place a batch of figure-spanning reference-line labels at the same - vertical level. ``labels`` is an iterable of ``(x, text)`` tuples. + vertical level. ``labels`` is an iterable of ``(x, title, value, ha)`` + tuples — ``title`` is rendered bold (use ``\\n`` for multi-line titles) + and ``value`` is rendered regular weight on the line below. ``ha`` + controls each label's horizontal alignment ("left" puts text to the + right of the line, "right" puts text to the left of the line). If any label's x lands in a region where the topmost curve leaves less than half the axes height free above it (e.g. Ethiopia at the IPL), ALL - labels in the batch are placed *above* axes[0] in the figure margin so - they line up. Otherwise (e.g. Sweden 1820 at the IPL) they all hang from - the top edge of axes[0]. + labels in the batch are placed *above* axes[0] (anchored in figure + fraction y) so they line up. Otherwise (e.g. Sweden 1820 at the IPL) + they all hang from the top edge of axes[0]. """ - from matplotlib.text import Text from matplotlib.transforms import blended_transform_factory label_list = list(labels) @@ -2293,45 +2409,40 @@ def _add_figure_spanning_vline_labels(fig, axes, labels) -> None: if xs.size and ys.size: order = np.argsort(xs) ylim_max = ax.get_ylim()[1] - for x, _ in label_list: + for x, *_ in label_list: y_at_x = float(np.interp(x, xs[order], ys[order])) if ylim_max > 0 and y_at_x > 0.5 * ylim_max: use_outside = True break - for x, text in label_list: - if use_outside: - trans = blended_transform_factory(ax.transData, fig.transFigure) - label = Text( - x=x, - y=ax.get_position().y1 + 0.005, - text=text, - transform=trans, - color="grey", - rotation=90, - verticalalignment="bottom", - horizontalalignment="left", - fontsize=8, - ) - fig.add_artist(label) - else: - trans = blended_transform_factory(ax.transData, ax.transAxes) - ax.text( - x=x, - y=1.0, - s=text, - transform=trans, - color="grey", - rotation=90, - verticalalignment="top", - horizontalalignment="left", - fontsize=8, - ) + if use_outside: + trans = blended_transform_factory(ax.transData, fig.transFigure) + y_anchor = ax.get_position().y1 + 0.005 + parent = fig + xycoords = trans + else: + trans = blended_transform_factory(ax.transData, ax.transAxes) + y_anchor = 1.0 + parent = ax + xycoords = trans + + for x, title, value, ha in label_list: + _styled_reference_label( + parent, + x, + y_anchor, + title=title, + value=value, + ha=ha, + xycoords=xycoords, + ) -def _add_figure_spanning_vline_label(fig, axes, x, text) -> None: +def _add_figure_spanning_vline_label( + fig, axes, x, title, value, ha: str = "left" +) -> None: """Single-label convenience wrapper around :func:`_add_figure_spanning_vline_labels`.""" - _add_figure_spanning_vline_labels(fig, axes, [(x, text)]) + _add_figure_spanning_vline_labels(fig, axes, [(x, title, value, ha)]) def draw_complete_area_under_curve( From 2edc8958990b832c07b45aecfe69aa057725814e Mon Sep 17 00:00:00 2001 From: Pablo Arriagada Date: Tue, 26 May 2026 18:02:19 +0100 Subject: [PATCH 38/38] =?UTF-8?q?=F0=9F=94=A8=F0=9F=A4=96=20distribution?= =?UTF-8?q?=5Fgenerator:=20anchor=20reference-line=20labels=20above=20the?= =?UTF-8?q?=20chart=20consistently?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Pass kde_plot.get_xaxis_transform() to _styled_reference_label so y=1.0 always means "top of axes" regardless of later set_ylim calls. Previously the labels were anchored at plt.ylim()[1] *before* share_y_axis rescaled the y range, so years with lower individual peaks (e.g. Sweden 1820) ended up with the label halfway down the chart. - Switch the share-axis save path back to bbox_inches="tight" so labels above the chart aren't clipped by the fixed subplots_adjust top margin. - Build draw_area_under_curve polygons explicitly so each fill ends exactly at the threshold x (matplotlib's `interpolate=True` only interpolates y1/y2 crossings, not the where boundary). - Add add_high_income_pl to distributional_plots and switch all reference- line labels to AnnotationBbox + VPacker so the title is bold and the "$X per " line is regular weight. --- ...er_common_norm_False_multiple_areas_3.svg} | 5613 +------- ...26_survey_True_log_True_fill_False_pen.svg | 78 +- ...yer_common_norm_False_multiple_areas_3.svg | 90 +- ...yer_common_norm_False_multiple_areas_3.svg | 120 +- ...yer_common_norm_False_multiple_areas_3.svg | 78 +- ...yer_common_norm_False_multiple_areas_3.svg | 106 +- ...yer_common_norm_False_multiple_areas_3.svg | 78 +- ...yer_common_norm_False_multiple_areas_3.svg | 110 +- ...yer_common_norm_False_multiple_areas_3.svg | 78 +- ...yer_common_norm_False_multiple_areas_3.svg | 106 +- ...yer_common_norm_False_multiple_areas_3.svg | 78 +- ...yer_common_norm_False_multiple_areas_3.svg | 106 +- ..._multiple_layer_common_norm_False_rows.svg | 112 +- ..._multiple_layer_common_norm_False_rows.svg | 114 +- ..._common_norm_False_multiple_areas_none.svg | 90 +- ...common_norm_False_multiple_areas_693.5.svg | 3608 ----- ..._common_norm_False_multiple_areas_3_30.svg | 10856 +++++++-------- ...rm_False_multiple_areas_3_30_lognormal.svg | 10864 ++++++++-------- ..._common_norm_False_multiple_areas_none.svg | 3757 ------ ..._common_norm_False_multiple_areas_3_30.svg | 9472 +++++++------- ...rm_False_multiple_areas_3_30_lognormal.svg | 9480 +++++++------- ..._common_norm_False_multiple_areas_none.svg | 3363 ----- ..._common_norm_False_multiple_areas_3_30.svg | 6252 ++++----- ...rm_False_multiple_areas_3_30_lognormal.svg | 5536 ++++---- .../Sweden_per_year_row_log_True.svg | 106 +- ...Sweden_per_year_row_log_True_lognormal.svg | 108 +- ...ommon_norm_False_multiple_areas_784.75.svg | 3489 ----- ...yer_common_norm_False_multiple_areas_3.svg | 128 +- ...yer_common_norm_False_multiple_areas_3.svg | 92 +- ...6_survey_False_log_False_fill_True_pen.svg | 52 +- ...er_common_norm_False_multiple_areas_30.svg | 86 +- ..._norm_False_multiple_areas_3_10_30_100.svg | 98 +- ...k_common_norm_True_multiple_areas_none.svg | 2880 ++-- .../distribution_generator.py | 36 +- 34 files changed, 29208 insertions(+), 48012 deletions(-) rename PabloArriagada/distribution_generator/{Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg => Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg} (62%) delete mode 100644 PabloArriagada/distribution_generator/Sweden-MPD-Moatsos_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_693.5.svg delete mode 100644 PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg delete mode 100644 PabloArriagada/distribution_generator/United Kingdom-Gapminder_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_784.75.svg diff --git a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg similarity index 62% rename from PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg rename to PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index dba50b43..5adf7a5e 100644 --- a/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Burundi_Ethiopia_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:53.366313 + 2026-05-26T17:57:48.350930 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - @@ -41,296 +41,296 @@ z - - + - $1 + $1 - + - $2 + $2 - + - $5 + $5 - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (day) + Income or consumption (day) - - + - - + - - + - - + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - + + + + + + + + + International Poverty Line + + + $3.00 per day + + + + + World median + + + $9.65 per day + + - - - Country + + Country - - + - - Burundi + + Burundi - - + - - Ethiopia + + Ethiopia - - + - - Syria + + Syria diff --git a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg index f93f4ce0..2f71530e 100644 --- a/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg +++ b/PabloArriagada/distribution_generator/Chile_Peru_Uruguay_2026_survey_True_log_True_fill_False_pen.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:57.351570 + 2026-05-26T17:57:51.132594 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,12 +111,12 @@ L 0 3.5 - - + @@ -126,7 +126,7 @@ L 3.5 0 - + @@ -136,7 +136,7 @@ L 3.5 0 - + @@ -146,7 +146,7 @@ L 3.5 0 - + @@ -156,7 +156,7 @@ L 3.5 0 - + @@ -166,7 +166,7 @@ L 3.5 0 - + @@ -176,7 +176,7 @@ L 3.5 0 - + @@ -186,7 +186,7 @@ L 3.5 0 - + @@ -196,7 +196,7 @@ L 3.5 0 - + @@ -206,7 +206,7 @@ L 3.5 0 - + @@ -216,131 +216,131 @@ L 3.5 0 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 24dc73f3..cc44f063 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:53.688629 + 2026-05-26T17:57:48.611772 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,173 +156,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -333,7 +333,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 1d3da1f7..bc5b13d6 100644 --- a/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Democratic Republic of Congo_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:53.819824 + 2026-05-26T17:57:48.689427 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -340,7 +340,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 5bb2b1d3..17c73b86 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:53.486359 + 2026-05-26T17:57:48.451072 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 5bd3ecb0..0e74d05f 100644 --- a/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Ethiopia_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:53.580543 + 2026-05-26T17:57:48.527969 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index a8d5c1fb..3e70ba13 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:53.936357 + 2026-05-26T17:57:48.785469 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index bff8abce..6bdb2287 100644 --- a/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Madagascar_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:54.032945 + 2026-05-26T17:57:48.876161 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index ab7bcbe7..9205638b 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:54.153640 + 2026-05-26T17:57:48.972885 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index 9affc377..2e466d06 100644 --- a/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Niger_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:55.240287 + 2026-05-26T17:57:49.057279 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index db3ba36d..dfb373c6 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:55.370391 + 2026-05-26T17:57:49.147092 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,131 +156,131 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index e6f0a9ee..7610a2dd 100644 --- a/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/Denmark_Syria_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:55.462948 + 2026-05-26T17:57:49.407512 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -291,7 +291,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg index f66a04e0..d8965bf6 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_False_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:56.061301 + 2026-05-26T17:57:50.089949 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -74,7 +74,7 @@ z - - + - - + @@ -2899,7 +2899,7 @@ z - - + - - + @@ -5564,7 +5564,7 @@ z - - + - - + @@ -8113,7 +8113,7 @@ z - - + - - + @@ -10612,12 +10612,12 @@ z - - + @@ -10627,7 +10627,7 @@ L 0 3.5 - + @@ -10637,7 +10637,7 @@ L 0 3.5 - + @@ -10647,7 +10647,7 @@ L 0 3.5 - + @@ -10657,7 +10657,7 @@ L 0 3.5 - + @@ -10667,7 +10667,7 @@ L 0 3.5 - + @@ -10677,7 +10677,7 @@ L 0 3.5 - + @@ -10687,7 +10687,7 @@ L 0 3.5 - + @@ -10697,7 +10697,7 @@ L 0 3.5 - + @@ -10707,7 +10707,7 @@ L 0 3.5 - + @@ -10717,159 +10717,159 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10880,7 +10880,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg index a457195d..b05ffc03 100644 --- a/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg +++ b/PabloArriagada/distribution_generator/Ethiopia_Bangladesh_Vietnam_Turkey_United States_2026_survey_True_log_True_multiple_layer_common_norm_False_rows.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:56.446050 + 2026-05-26T17:57:50.349772 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -75,7 +75,7 @@ z - - + - - + @@ -3043,7 +3043,7 @@ z - - + - - + @@ -5845,7 +5845,7 @@ z - - + - - + @@ -8521,7 +8521,7 @@ z - - + - - + @@ -11133,12 +11133,12 @@ z - - + @@ -11148,7 +11148,7 @@ L 0 3.5 - + @@ -11158,7 +11158,7 @@ L 0 3.5 - + @@ -11168,7 +11168,7 @@ L 0 3.5 - + @@ -11178,7 +11178,7 @@ L 0 3.5 - + @@ -11188,7 +11188,7 @@ L 0 3.5 - + @@ -11198,7 +11198,7 @@ L 0 3.5 - + @@ -11208,7 +11208,7 @@ L 0 3.5 - + @@ -11218,7 +11218,7 @@ L 0 3.5 - + @@ -11228,7 +11228,7 @@ L 0 3.5 - + @@ -11238,166 +11238,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -11408,7 +11408,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg index d15bb5cc..d809fe4c 100644 --- a/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/Madagascar_United Kingdom_2026_survey_True_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:53.181802 + 2026-05-26T17:57:48.184272 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden-MPD-Moatsos_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_693.5.svg b/PabloArriagada/distribution_generator/Sweden-MPD-Moatsos_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_693.5.svg deleted file mode 100644 index 0dbc2a6c..00000000 --- a/PabloArriagada/distribution_generator/Sweden-MPD-Moatsos_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_693.5.svg +++ /dev/null @@ -1,3608 +0,0 @@ - - - - - - - - 2025-08-21T14:00:16.653286 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - 2 - - - - - - - - - - 5 - - - - - - - - - - 10 - - - - - - - - - - 20 - - - - - - - - - - 50 - - - - - - - - - - 100 - - - - - - - - - - 200 - - - - - - - - - - 500 - - - - - - - - - - 1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - Sweden-MPD-Moatsos (1820) - - - - diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index ccba3022..6d9d477a 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:02:15.262620 + 2026-05-26T17:58:00.123398 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -41,5667 +41,5691 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - + - - + - - + - - + + + + + + - - Sweden (1820) + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 99cd5cb0..333eb013 100644 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:02:23.956852 + 2026-05-26T17:58:06.045260 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -41,5675 +41,5703 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - + - - + - - + - - + + + + + + - - Sweden (1820) + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + Sweden (1820) diff --git a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 6d5c012a..00000000 --- a/PabloArriagada/distribution_generator/Sweden_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,3757 +0,0 @@ - - - - - - - - 2025-12-05T16:06:55.469748 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - 2 - - - - - - - - - - 5 - - - - - - - - - - 10 - - - - - - - - - - 20 - - - - - - - - - - 50 - - - - - - - - - - 100 - - - - - - - - - - 200 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - Sweden (1820) - - - - - - - - - diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 7279e0b5..d6a5add2 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:02:15.329492 + 2026-05-26T17:58:00.194372 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -41,4972 +41,5002 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - + - - + - - + - - + + + + + + - - Sweden (1920) + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 07b28875..ce28a59a 100644 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:02:24.021537 + 2026-05-26T17:58:06.115511 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -41,4984 +41,5010 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - + - - + - - + - - + + + + + + - - Sweden (1920) + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + Sweden (1920) diff --git a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg b/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg deleted file mode 100644 index 89e884c6..00000000 --- a/PabloArriagada/distribution_generator/Sweden_1920_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_none.svg +++ /dev/null @@ -1,3363 +0,0 @@ - - - - - - - - 2025-12-05T16:06:55.537259 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - 2 - - - - - - - - - - 5 - - - - - - - - - - 10 - - - - - - - - - - 20 - - - - - - - - - - 50 - - - - - - - - - - 100 - - - - - - - - - - 200 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - Sweden (1920) - - - - - - - - - diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg index 408c567e..2d450f24 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:02:15.408530 + 2026-05-26T17:58:00.265518 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -41,3355 +41,3383 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - + - - + - - + + + + + + - - Sweden (2026) + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg index 87303608..8e4ef866 100644 --- a/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_30_lognormal.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:02:24.091310 + 2026-05-26T17:58:06.182846 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,19 +21,19 @@ - - @@ -41,3006 +41,3028 @@ z - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Income or consumption (month) + Income or consumption (month) - - + - - + - - + + + + + + - - Sweden (2026) + + + International Poverty Line + + + $90 per month + + + + + High-income poverty line + + + $900 per month + + + + Sweden (2026) diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg index a5b84eca..e1b08499 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:02:21.751536 + 2026-05-26T17:58:04.442523 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -75,7 +75,7 @@ z - - + - - + - - + @@ -5531,7 +5531,7 @@ z - - + - - + - - + @@ -10247,12 +10247,12 @@ z - - + @@ -10262,7 +10262,7 @@ L 0 3.5 - + @@ -10272,7 +10272,7 @@ L 0 3.5 - + @@ -10282,7 +10282,7 @@ L 0 3.5 - + @@ -10292,7 +10292,7 @@ L 0 3.5 - + @@ -10302,7 +10302,7 @@ L 0 3.5 - + @@ -10312,7 +10312,7 @@ L 0 3.5 - + @@ -10322,7 +10322,7 @@ L 0 3.5 - + @@ -10332,7 +10332,7 @@ L 0 3.5 - + @@ -10342,173 +10342,173 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10519,7 +10519,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg index 19081cca..08daf173 100644 --- a/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg +++ b/PabloArriagada/distribution_generator/Sweden_per_year_row_log_True_lognormal.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:02:29.704063 + 2026-05-26T17:58:07.420945 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -76,7 +76,7 @@ z - - + - - + - - + @@ -5536,7 +5536,7 @@ z - - + - - + - - + @@ -10253,12 +10253,12 @@ z - - + @@ -10268,7 +10268,7 @@ L 0 3.5 - + @@ -10278,7 +10278,7 @@ L 0 3.5 - + @@ -10288,7 +10288,7 @@ L 0 3.5 - + @@ -10298,7 +10298,7 @@ L 0 3.5 - + @@ -10308,7 +10308,7 @@ L 0 3.5 - + @@ -10318,7 +10318,7 @@ L 0 3.5 - + @@ -10328,7 +10328,7 @@ L 0 3.5 - + @@ -10338,7 +10338,7 @@ L 0 3.5 - + @@ -10348,180 +10348,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -10532,7 +10532,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/United Kingdom-Gapminder_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_784.75.svg b/PabloArriagada/distribution_generator/United Kingdom-Gapminder_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_784.75.svg deleted file mode 100644 index 7baacc45..00000000 --- a/PabloArriagada/distribution_generator/United Kingdom-Gapminder_1820_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_784.75.svg +++ /dev/null @@ -1,3489 +0,0 @@ - - - - - - - - 2025-08-21T13:54:46.248639 - image/svg+xml - - - Matplotlib v3.10.1, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - 2 - - - - - - - - - - 5 - - - - - - - - - - 10 - - - - - - - - - - 20 - - - - - - - - - - 50 - - - - - - - - - - 100 - - - - - - - - - - 200 - - - - - - - - - - 500 - - - - - - - - - - 1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Income or consumption (day) - - - - - - - - - - - - - - - - - - - - - - - - - - - United Kingdom-Gapminder (1820) - - - - diff --git a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg index b3dfbe6e..f850bce4 100644 --- a/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg +++ b/PabloArriagada/distribution_generator/United States_Burundi_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3.svg @@ -1,16 +1,16 @@ - + - 2026-05-26T16:01:55.640266 + 2026-05-26T17:57:49.716512 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -21,8 +21,8 @@ - - - + - $10 + $10 - + - $20 + $20 - + - $50 + $50 - + - $100 + $100 - + - $200 + $200 - + - $500 + $500 - + - $1000 + $1000 - + - $2000 + $2000 - + - $5000 + $5000 - + - $10000 + $10000 - + - $20000 + $20000 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -319,7 +319,7 @@ L 0 2 - - + - - + - - + - - + @@ -1641,16 +1641,16 @@ z " style="fill: #ffffff; opacity: 0.8; stroke: #cccccc; stroke-linejoin: miter"/> - Country + Country - - United States + United States - 2026-05-26T16:01:55.732808 + 2026-05-26T17:57:49.795578 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,7 +146,7 @@ L 0 3.5 - + @@ -156,166 +156,166 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -326,7 +326,7 @@ L 0 2 - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg index 4a96a410..64e32da0 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_False_fill_True_pen.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:57.161659 + 2026-05-26T17:57:51.031647 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -111,54 +111,54 @@ L 0 3.5 - - + - + - + - + - + - + - + @@ -166,7 +166,7 @@ L 3.5 0 - - + - - + - - + - - + @@ -936,7 +936,7 @@ L 448.2725 7.2 income in Norway +iVBORw0KGgoAAAANSUhEUgAAAagAAACqCAYAAAD4Ddt/AAACwElEQVR4nO3ZOw6EMBAFweFz/ysbEUPuDqqkTTYia73xsdYaAKi5Z+ba/REA8Beo9wcAKRYUAEkCBUCSEx8ASRYUAEkCBUCSQAGQ5A0KgCQLCoAkCwqAJAsKgCSBAiBJoABI8gYFQJIFBUCSQAGQ5MQHQJIFBUCSQAGQ5MQHQJIFBUCSQAGQJFAAJHmDAiDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASHLiAyDJggIgSaAASBIoAJK8QQGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQ58QGQZEEBkCRQACQJFABJ3qAASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSnPgASLKgAEgSKACSBAqAJG9QACRZUAAkCRQASU58ACRZUAAkCRQASU58AGQDde7+CAD4C9Tx+RcANrOeAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAJIECIEmgAEgSKACSBAqAKXoAmUIF7JlcnwcAAAAASUVORK5CYII=" id="image79c406173d" transform="scale(1 -1) translate(0 -122.4)" x="142.2725" y="-6.768" width="305.28" height="122.4"/> diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg index a17a9a7a..65b9a9a7 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_30.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:52.659702 + 2026-05-26T17:57:48.025871 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + diff --git a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg index a7529bae..d137f9cb 100644 --- a/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg +++ b/PabloArriagada/distribution_generator/World_2026_survey_False_log_True_multiple_layer_common_norm_False_multiple_areas_3_10_30_100.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:52.962971 + 2026-05-26T17:57:48.098613 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,180 +146,180 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -330,7 +330,7 @@ L 0 2 - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg index f11318ac..1cd822fd 100644 --- a/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg +++ b/PabloArriagada/distribution_generator/all_countries_2026_survey_False_log_True_multiple_stack_common_norm_True_multiple_areas_none.svg @@ -6,11 +6,11 @@ - 2026-05-26T16:01:57.060809 + 2026-05-26T17:57:50.955796 image/svg+xml - Matplotlib v3.10.1, https://matplotlib.org/ + Matplotlib v3.10.9, https://matplotlib.org/ @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -86,7 +86,7 @@ L 0 3.5 - + @@ -96,7 +96,7 @@ L 0 3.5 - + @@ -106,7 +106,7 @@ L 0 3.5 - + @@ -116,7 +116,7 @@ L 0 3.5 - + @@ -126,7 +126,7 @@ L 0 3.5 - + @@ -136,7 +136,7 @@ L 0 3.5 - + @@ -146,187 +146,187 @@ L 0 3.5 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -337,7 +337,7 @@ L 0 2 - - + - - + - - + - - + - - + - - + - - + diff --git a/PabloArriagada/distribution_generator/distribution_generator.py b/PabloArriagada/distribution_generator/distribution_generator.py index d004a88e..f1bff73e 100644 --- a/PabloArriagada/distribution_generator/distribution_generator.py +++ b/PabloArriagada/distribution_generator/distribution_generator.py @@ -245,8 +245,9 @@ def run() -> None: gridsize=GRIDSIZE_HIGHER_RESOLUTION, period="day", survey_based=False, - add_ipl="area", - add_world_median="area", + add_ipl="line", + add_world_median="line", + add_multiple_lines_day=[3], ) for countries in COUNTRIES: @@ -413,7 +414,8 @@ def run() -> None: gridsize=GRIDSIZE_HIGHER_RESOLUTION, period="month", survey_based=False, - add_ipl=None, + add_ipl="line", + add_high_income_pl="line", add_world_median=None, add_multiple_lines_day=[3, 30], width=1150, @@ -469,7 +471,8 @@ def run() -> None: gridsize=GRIDSIZE_HIGHER_RESOLUTION, period="month", survey_based=False, - add_ipl=None, + add_ipl="line", + add_high_income_pl="line", add_world_median=None, add_multiple_lines_day=[3, 30], width=1150, @@ -784,10 +787,11 @@ def _filter_year(year_value): _styled_reference_label( kde_plot, ipl, - plt.ylim()[1], + 1.0, title="International Poverty Line", value=f"${ipl:.{dollar_decimals}f} per {period}", ha="right", + xycoords=kde_plot.get_xaxis_transform(), ) elif add_ipl == "area": draw_area_under_curve( @@ -807,10 +811,11 @@ def _filter_year(year_value): _styled_reference_label( kde_plot, world_median_year, - plt.ylim()[1], + 1.0, title="World median", value=f"${world_median_year:.{dollar_decimals}f} per {period}", ha="left", + xycoords=kde_plot.get_xaxis_transform(), ) elif add_world_median == "area" and df_main_indicators is not None: draw_area_under_curve( @@ -830,10 +835,11 @@ def _filter_year(year_value): _styled_reference_label( kde_plot, high_income_pl, - plt.ylim()[1], + 1.0, title="High-income poverty line", value=f"${high_income_pl:.{dollar_decimals}f} per {period}", ha="left", + xycoords=kde_plot.get_xaxis_transform(), ) elif add_high_income_pl == "area": draw_area_under_curve( @@ -921,19 +927,13 @@ def _filter_year(year_value): fig.set_size_inches(width / 100, height / 100) - # When the per-year SVGs need to be stackable (share_x_axis / share_y_axis), - # pin the axes to a fixed fraction of the figure and disable `bbox_inches="tight"`. - # Otherwise matplotlib's tight crop varies by the visible content (e.g. the per-year - # country label that sits at the year-specific median), shifting the plot area - # horizontally across the saved SVGs. - if x_axis_range is not None or shared_y_max is not None: - plt.subplots_adjust(left=0.04, right=0.96, top=0.95, bottom=0.22) - save_kwargs = {} - else: - save_kwargs = {"bbox_inches": "tight"} + # Use bbox_inches="tight" so reference-line labels above the chart are + # included in the saved SVG. For shared-axis cases the label content is + # the same across years (same IPL / high-income / world median), so the + # tight bbox produces consistent dimensions across SVGs. fig.savefig( f"{PARENT_DIR}/{filename}_{year}_survey_{survey_based}_log_{log_scale}_multiple_{multiple}_common_norm_{common_norm}_multiple_areas_{filename_multiple_areas}{filename_suffix}.svg", - **save_kwargs, + bbox_inches="tight", ) plt.close(fig)