diff --git a/wsgi.py b/wsgi.py
index 634255f..1e05102 100644
--- a/wsgi.py
+++ b/wsgi.py
@@ -260,8 +260,9 @@ def convert_fig_to_svg(fig: plt.Figure) -> str:
@app.route("/")
@cache.cached(query_string=True)
def tables():
- def _print_as_html(df: pd.DataFrame):
+ def _print_as_html(df: pd.DataFrame, total: int | None = None) -> None:
df = df.astype({"Digitale Befragung": "Int32"})
+ df = df.dropna()
with pd.option_context("display.max_rows", None):
table = df.to_html(
index_names=False,
@@ -281,9 +282,23 @@ def tables():
[
f"
{df['Digitale Befragung'].sum()} | ",
" ",
- " ",
]
)
+ if total:
+ tfoot.extend([
+ " ",
+ " | Weitere Bezirke | ",
+ ])
+ for i in range(len(df.columns) - 2):
+ tfoot.append(" | ")
+ tfoot.extend(
+ [
+ f" {total - df['Digitale Befragung'].sum()} | ",
+ "
",
+ ]
+ )
+ tfoot.append(" ")
+
tfoot = "\n".join(tfoot)
idx = table.index("")
output_str.append(table[: idx - 1])
@@ -304,7 +319,7 @@ def tables():
plt.close()
_print_as_html(df_state)
- _print_as_html(df)
+ _print_as_html(df, total=df_state['Digitale Befragung'].sum())
return render_template(
"base.html",