Vorlage Diskussion:Jahresdiagramm
Meine Experimente
[Quelltext bearbeiten]Timeline | {{Jahresdiagramm}} |
---|---|
Ich habe ein wenig experimentiert (Daten aus Yundum); ich will die Vorlage ja verwenden, wenn es neue Daten zu 2011 gibt - leider sind auf http://bevoelkerungsstatistik.de noch keine neuen Werte zur Berechnung 2011 vorhanden.
Die äußeren Maße der Grafik will ich behalten, deswegen habe ich das Paar |Höhe
und |Breite
definiert. Da ich |Höhe
verwendet habe muss ich dann über |Maßstab
noch irgend einen Wert mir suchen. Mir wäre es aber lieber - wenn ich einen Max-Wert für y mitgeben kann (und durch Intervall ihn vernünftig aufteilen). Kann man da irgend was machen? "pro Pixel Höhe" (bei |Maßstab
) interessiert mich wenig bzw. ich will die Rechnung nicht für |Maßstab
jedes mal machen. --Atamari 19:54, 18. Jul. 2011 (CEST)
- erledigt. Der Maßstab ist aber immer genau Max durch Höhe, egal ob die beiden abgerundet werden oder nicht. Allerdings legt Maßstab mit Intervall den "Zeilenabstand" fest, wenn du also an der Höhe bzw. Max rumspielst solltest du das Intervall anpassen. --✓ Bergi 14:25, 19. Jul. 2011 (CEST)
- Ja genau. Super. Sicherlich kann man auch mit
|Maßstab
arbeiten, aber ich denke es ist vielleicht intuitiver den Wert|Max
einfach aus der Datentabelle abzulesen (eigentlich könnte das die Vorlage, ich habe das mal vor Monaten auf den Commons gemacht - aber das würde das Laden der Seite durch vielen (Max-)Formeln vielleicht verlangsamen). --Atamari 15:49, 19. Jul. 2011 (CEST)
- Ja genau. Super. Sicherlich kann man auch mit
- Jetzt muss ich das noch mittelfristig in die {{Infobox Ort in Gambia}} integrieren.
{{Jahresdiagramm |Höhe = 120 festgesetzt (als default) in der Infobox |Breite = 238 festgesetzt (als default) in der Infobox |Max = 13000 |Intervall = 2000 |Farbe = drabgreen festgesetzt (als default) in der Infobox |Einheit = Einwohner festgesetzt (als default) in der Infobox |Start = 1965 festgesetzt (als default) in der Infobox (Unabhänigkeitsdatum GM) |1993 = 3545 wird durchgeschleift (es werden wohl die Daten von 1973, 1983, 1993, 2003, [2004-] vorhanden sein) }}
- aus der Infobox könnte
|Einwohner
= nun der Wert aus -> {{CURRENTYEAR}} oder wenn nicht vorhanden aus {{CURRENTYEAR}}-1 verwendet werden (In Klammer dahinter das ausgegebene Jahr). Oder klappt das nicht, weil EW noch für die {{Coordinate}} gebraucht wird? - Unschlüssig bin ich noch, ob als gemeinsamer Startwert 1965 wirklich günstig ist, oder das erst abhängig von der Datengrundlage zu setzten. 1965 hätte den Charme, dass die Säulen im Themenbereich dann alle gleich dick sind.
- Aber vielleicht kannst du mir helfen, das in der Vorlage mittelfristig einbauen. So dass die Parameter vernünftig übergeben werden? --Atamari 15:49, 19. Jul. 2011 (CEST)
- Man könnte ein bisschen tricksen, um mit weniger Parametern auszukommen:
{{Infobox Ort in Gambia |Längengrad |Breitengrad |Distrikt |was weiß ich |… |Bev1 = 1973=545 |Bev2 = 1983=4589 |Bev3 = 1994=3545 |Bev4 = 2003=4529 }}
- mit
|- | {{Jahresdiagramm |Höhe = 120 |Breite = 238 |Max = 14000 |Intervall = 2000 |Farbe = drabgreen |Einheit = Einwohner |Start = 1965 |{{{Bev1|}}} |{{{Bev2|}}} |{{{Bev3|}}} |… |{{padleft:|4|{{{EinwohnerStand}}}}}={{{Einwohner}}} }}
- in der Infobox. Das würde die Infobox etwas übersichtlicher machen, wenn man sich sicher sein kann, dass keine Einbindung 46 Werte aufweisen kann. Ich würde aber für simples Weiterreichen plädieren, da das Format im Artikel etwas gewöhnungsbedürftig ist und potentielle Autoren abschreckt, die meinen, die Parameter müssten chronologisch belegt werden, und die Bev-Parameter nicht neu nummerieren wollen.
- Wenn du den Parseraufwand ein wenig minimieren willst, könnte man auch über eine direkte Einbindunge der Vorlage:Jahresdiagramm/Timeline nachdenken. Das sähe dann etwa so aus:
|- | {{Jahresdiagramm/Timeline |Intervall = 2000 |Balkenzahl = 7 |Balkenformel = *2000) |Höhenformel = 1+20 + 1/14000*120* |Grafikbreite = (238-50-0) |Grafikhöhe = 120 |Oben = 0 |Unten = 20 |Rechts = 0 |Links = 50 |Start = 1965 |Startlinks = ( ({{LOCALYEAR}}-1965) / 15 round 0 ) |Ende = {{LOCALYEAR}} |Enderechts = ( ({{LOCALYEAR}}-1965) / 15 round 0 ) |Gitter = |Säulenbreite = 1 |Farbe = drabgreen |Einheit = Einwohner |1965 = {{{Bev1965|}}} |1966 = {{{Bev1966|}}} |1967 = {{{Bev1967|}}} |1968 = {{{Bev1968|}}} |1969 = {{{Bev1969|}}} |1970 = {{{Bev1970|}}} |… |{{padleft:|4|{{{EinwohnerStand}}}}}={{{Einwohner}}} }}
- --✓ Bergi 16:56, 19. Jul. 2011 (CEST)
- PS zu deinen Fragen:
- Das würde ich über einen Parameter
EinwohnerStand
lösen. Die aktuelle Zahl sollte sowieso nochmal als Text erscheinen, dahinter kann (per {{FormatDate}}?) der Stand angezeigt werden. Ebenso kann man sich dann für die Koordinaten den richtigen Bevölkerungsparameter raussuchen:…|pop = {{{Bev{{Str left|4|{{{Einwohnerstand|}}}}} }}} |…
. - Das Jahr der Unabhängigkeit als Start zu nehmen finde ich OK. 1965 ist auch noch nicht so lange her, dass das Diagramm größtenteils leer ist und nur ganz rechts befüllt wird; da finde ich Einheitlichkeit besser. Eine automatisierte Lösung per {{Min}} (o.ä.) ist etwas aufwändig. --✓ Bergi 17:08, 19. Jul. 2011 (CEST)
- Ja, Danke. Ich schau mir das in den nächsten Tagen an. --Atamari 00:54, 20. Jul. 2011 (CEST)
- Ich habe es eingebunden und unter dem Ort Yundum eine Probe-Umstellung gemacht, klappt ja ganz gut. Aber das mittels den Parameter EinwohnerStand die passende Einwohnerzahl entnommen wird hat bei mir nicht funktioniert. Auch nicht funktioniert hat, zwei neue Wartungslinks von mir, an denen ich Anhand der Einwohnerzahl die Artikel klassifizieren kann. Schaust du mal bitte? --Atamari 00:54, 21. Jul. 2011 (CEST)
- Gerne. Das Entnehmen der Einwohnerzahl aus der Jahreszahlenreihe müsste (exemplarisch) so funktionieren:
- Ich habe es eingebunden und unter dem Ort Yundum eine Probe-Umstellung gemacht, klappt ja ganz gut. Aber das mittels den Parameter EinwohnerStand die passende Einwohnerzahl entnommen wird hat bei mir nicht funktioniert. Auch nicht funktioniert hat, zwei neue Wartungslinks von mir, an denen ich Anhand der Einwohnerzahl die Artikel klassifizieren kann. Schaust du mal bitte? --Atamari 00:54, 21. Jul. 2011 (CEST)
- Das würde ich über einen Parameter
|- {{#if: {{{EinwohnerStand|}}} | {{!}} Einwohner {{!}} {{{ {{{Einwohnerstand}}} |}}} ({{{EinwohnerStand}}}) }} |- {{#if: {{{EinwohnerStand|}}} | {{#iferror: {{#ifexpr: {{{ {{{Einwohnerstand}}} }}} < 500 | Wartungslink }} | Probleme beim Parameter <code>{{{Einwohnerstand}}}</code>, der die Einwohnerzahl sein sollte! }} }} |-
- Nachdem der Parameter aber ziemlich oft gebraucht wird hab ich mich für die andere Lösung entschieden, das Übergeben des aktuellen Einwohnerstandes an das Diagramm. Wobei mir gerade kommt, dass dann vermutlich viele die Einwohnerzahl doppelt angeben. So aufwendig wäre die andere Lösung eigentlich nicht, soll ichs noch ändern? --✓ Bergi 21:16, 21. Jul. 2011 (CEST)
- So, ich bin gerade angekommen und schau mir die Änderungen an (will ja immer was lernen). Erstmal DANKE - gleich studiere ich weiter den Quelltext. Soweit ich den Quelltext gesehen habe, ist es auch eine Idee den letzten Wert (der ausgeschrieben in der Box stehen soll) gesondert zu übergeben und den Rest als Historie anzusehen. So braucht der auch nur einmal übergeben zu werden.
- Was ich gesehen habe, ist - wohl versehentlich nicht mehr der Parameter map (also Karte) ausgewertet wird. Unter Map habe ich Karten bei Banjul, Serekunda und Brikama eingebunden. Diese sind auf den damaligen Stand in Openstreetmap einigermaßen so erstellt, dass man eine Vorstellung über die Struktur bekommen kann.
- Auch klappt jetzt der Wartungslink, von dem ich mir verspreche gar nicht so uninteressant ist. Also "Wartungslink" wünsche ich mir noch a) die Artikel des aktuellen Jahr, b) des vergangenen Jahr und c) die nicht in diesen beiden Kategorien eingeordnet sind, also mehr als ein Jahr nicht aktualisiert sind oder ein fehlerhaftes EinwohnerStand (z.B. 2013) haben.
- ...so, jetzt schau ich weiter in meiner Beobachtungsliste und dann noch den Quelltext. --Atamari 22:18, 21. Jul. 2011 (CEST)
- Parameter "Map" habe ich entfernt? (nun wieder eingefügt). --Atamari 23:32, 21. Jul. 2011 (CEST)
- Zu deiner Frage ("Wobei mir gerade kommt, dass dann vermutlich viele die Einwohnerzahl doppelt angeben. So aufwendig wäre die andere Lösung eigentlich nicht, soll ichs noch ändern?") Erstens, gefällt mir die Lösung dass der letzte Wert eine besondere Wichtigkeit durch die Benamung des Parameter erfährt - schließlich wird er in der Box selber öfter gebraucht. Zweitens - zu 99% habe ich Artikel zu Orte in Gambia beschrieben. Man könnte ja auch eine Fehlermeldung ausgeben, wenn da was doppelt (und sogar verschieden) übergeben wird. --Atamari 23:41, 21. Jul. 2011 (CEST)
- Bin durch. Alle Orte in Gambia + Alle Regionen in Gambia sind umgestellt. --Atamari 15:57, 26. Jul. 2011 (CEST)
- Zu deiner Frage ("Wobei mir gerade kommt, dass dann vermutlich viele die Einwohnerzahl doppelt angeben. So aufwendig wäre die andere Lösung eigentlich nicht, soll ichs noch ändern?") Erstens, gefällt mir die Lösung dass der letzte Wert eine besondere Wichtigkeit durch die Benamung des Parameter erfährt - schließlich wird er in der Box selber öfter gebraucht. Zweitens - zu 99% habe ich Artikel zu Orte in Gambia beschrieben. Man könnte ja auch eine Fehlermeldung ausgeben, wenn da was doppelt (und sogar verschieden) übergeben wird. --Atamari 23:41, 21. Jul. 2011 (CEST)
- Nachdem der Parameter aber ziemlich oft gebraucht wird hab ich mich für die andere Lösung entschieden, das Übergeben des aktuellen Einwohnerstandes an das Diagramm. Wobei mir gerade kommt, dass dann vermutlich viele die Einwohnerzahl doppelt angeben. So aufwendig wäre die andere Lösung eigentlich nicht, soll ichs noch ändern? --✓ Bergi 21:16, 21. Jul. 2011 (CEST)
Fehlermeldung
[Quelltext bearbeiten]Hallo,
folgender Jahresvergleich solte laut Code doch anders aussehen, oder?
Gefundene Bugs:
- Kleinen Double-Werte werden viel zu lang dargestellt
- 2012 fehlt in der Darstellung
- Die Überschrift der y-Achse schneidet sich mit dem Skala-Wert
- Der Balken von 2010 beginnt unter Null, der von 2011 über Null.
Eventuell kann sich ja mal jemand diese Bugs ansehen :-)