Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
20 lines
1.1 KiB
HTML
20 lines
1.1 KiB
HTML
{# Torte + Legende (Ausbaustufe 13). segmente: Liste von Dicts
|
|
{s: engine.pie.Slice, q: Query-String für den Drill-down oder None,
|
|
gewaehlt: bool, zusatz: Zusatztext oder None}. #}
|
|
{% macro torte(segmente, titel) %}
|
|
<figure class="torte">
|
|
<figcaption>{{ titel }}</figcaption>
|
|
<svg class="torte-svg" viewBox="-1.05 -1.05 2.1 2.1" role="img" aria-label="{{ titel }}">
|
|
{% for seg in segmente %}{% set s = seg.s %}
|
|
{% if s.path %}<path d="{{ s.path }}" class="seg {{ s.color }}"><title>{{ s.label }}: {{ s.value|eur }} € ({{ s.share|pct }})</title></path>
|
|
{% else %}<circle r="1" class="seg {{ s.color }}"><title>{{ s.label }}: {{ s.value|eur }} € ({{ s.share|pct }})</title></circle>{% endif %}
|
|
{% endfor %}
|
|
</svg>
|
|
<ul class="legende">
|
|
{% for seg in segmente %}{% set s = seg.s %}
|
|
<li><span class="swatch {{ s.color }}"></span><span>{{ s.label }}</span><span class="legende-wert">{{ s.value|eur }} € · {{ s.share|pct }}{% if seg.zusatz %} · {{ seg.zusatz }}{% endif %}</span></li>
|
|
{% endfor %}
|
|
</ul>
|
|
</figure>
|
|
{% endmacro %}
|