covidbot icon indicating copy to clipboard operation
covidbot copied to clipboard

Skalierung bei Grafik "Impfungen" auf Prozent umstellen?

Open trutzig89182 opened this issue 3 years ago • 8 comments

Beim Lesen der Grafik "Impfungen in Deutschland" unterläuft mir regelmäßig der Fehler, intuitiv die durchgezogenen Linien von den absoluten Zahlen als Markierungen für die Prozentzahlen zu interpretieren. Es kann natürlich sein, dass das nur bei mir so ist, und dann ist dieser Vorschlag nichtig.

Wenn es aber anderen auch so geht, so würde ich vorschlagen, die Prozenteskale rechts als Hauptskala für die Grafik zu nehmen. Mir scheint die prozentuale Angabe ohnehin häufiger die relevante zu sein, etwa wenn man nach Medienberichten geht.

Diagramm für „Impfungen in Deutschland“. Links die absolute Skala in 10 Millionen Schritten abetragen. Die Skalierungsstrichte sind bis zum rechten Rand des Diagramms durchgezogen. Rechts die Skala in Prozent, mit abweichenden Schritten, die aber nur mit kleinen Strichen angedeutet sind.

trutzig89182 avatar Jan 07 '22 10:01 trutzig89182

Ich schaue auch eher auf die Prozente. Was denkt @errotu?

eknoes avatar Jan 07 '22 15:01 eknoes

Hm, schwierig. Ich halte die Prozentangaben auch für "wichtiger". Deshalb haben sie eigentlich eigene durchgezogene Linien verdient. Auf der anderen Seite schaue ich eigentlich auch nur auf den rechten Rand der Grafik, weil mich die Lage vor einem Jahr (links in der Grafik) ja aktuell nicht interessiert.

Habe ich es richtig im Kopf, dass wir die durchgezogenen Linien aktuell nur links beschriften können, nicht rechts? Mit der Prozenteskala als Hauptskala würde die also nach links rutschen? Das fände ich nicht so gut. Optimal wäre mE eigentlich nach wie vor, durchgängige Linien für beide Skalen (vielleicht eine gestrichelt zur besseren Unterscheidung). Das war aber nicht ohne Weiteres umzusetzen, oder?

errotu avatar Jan 07 '22 16:01 errotu

Habe schon so was befürchtet wie, dass es mit der Positionierung links/rechts zusammenhängt. Prozent nach links fände ich auch eher eine Verschlechterung. Dann würde ich eher die absoluten Zahlen weglassen. Aber verstehe, dass das auch nicht so toll ist.

trutzig89182 avatar Jan 07 '22 16:01 trutzig89182

Ich denke das ist möglich, wenn ich die Tage mal Zeit habe schaue ich mir das an. Ich finde auch, dass die "Prozentachse" rechts bleiben muss.

eknoes avatar Jan 10 '22 11:01 eknoes

Ich schaffe es leider gerade nicht, sorry. Aber falls es einen PR gibt, sehr gerne. Die Grafik wird in visualization.py in der Funktion vaccination_graph erzeugt,

eknoes avatar Jan 13 '22 17:01 eknoes

Ich packe es mal hier rein, weil es auch zur Impfgrafik gehört: Wir könnten uns überlegen, ob wir die Y-Achse auf 100% bzw. 82 Millionen fixieren. Dann ist das Ziel klar erkennbar.

errotu avatar Feb 12 '22 09:02 errotu

Ich hatte vor einiger Zeit mal in visualization.py geschaut aber auf Anhieb nicht rausgefunden, wie man das sinnvoll umstellen kann.

Bei der Gelegenheit ist mir aber auch noch eine weitere Kleinigkeit aufgefallen. Bei den durchgezogenen am Anfang zusätzlich die ticks ausgegebeben. Dadurch ist am Anfang der Linie ein kleiner Knubbel. Schöner wäre es für die Skala, die dem grid zugrunde liegt, auf die ticks zu verzichten. Aber das ist natürlich auch bei den anderen Grafiken der Fall.

trutzig89182 avatar Feb 14 '22 14:02 trutzig89182

Ich habe schonmal versucht, in der visualization.py ein bisschen zu refactoren und das besser zu gestalten, aber meistens leider die schnelle, einfache Variante bei neuen Grafiken gewählt den Code schnell zu kopieren und zu ändern. Ich bin gerade in der Endphase meiner Masterarbeit, da werde ich in den nächsten Wochen nichts am Bot schaffen, tobt euch gerne aus.

Wenn ich an Grafiken herumgespielt habe, hab ich immer in der jeweiligen Funktion savefig(filepath, format='JPEG') durch plt.show() ausgetauscht und in der main.py ganz unten in diesem Block die jeweilige Grafik erzeugt:

    elif args.graphic_test:
        vis = Visualization(get_connection(config), abspath("graphics/"),
                            disable_cache=True)
        vis.vaccination_graph(0)

Damit kann man den Bot einfach kurz mit python -m covidbot --graphic-test starten, und es wird direkt die Grafik erzeugt und angezeigt - nicht der beste Workflow, aber für mich ging das ganz gut. Habe das alles leider nie geschafft ordentlich zu dokumentieren.

eknoes avatar Feb 15 '22 11:02 eknoes