Datei:Altersstruktur von Dinslaken - Teilbereich.svg
Originaldatei (SVG-Datei, Basisgröße: 800 × 400 Pixel, Dateigröße: 62 KB)
Diese Datei und die Informationen unter dem roten Trennstrich werden aus dem zentralen Medienarchiv Wikimedia Commons eingebunden.
Inhaltsverzeichnis
Beschreibung
BeschreibungAltersstruktur von Dinslaken - Teilbereich.svg |
Deutsch: Grafik der Altersstruktur für Bevölkerungsteile in Dinslaken ab 1990 |
Datum | |
Quelle | Eigenes Werk |
Urheber | Makrameus |
Lizenz
Diese Datei wird unter der Creative-Commons-Lizenz CC0 1.0 Verzicht auf das Copyright zur Verfügung gestellt. | |
Die Person, die das Werk mit diesem Dokument verbunden hat, übergibt dieses weltweit der Gemeinfreiheit, indem sie alle Urheberrechte und damit verbundenen weiteren Rechte – im Rahmen der jeweils geltenden gesetzlichen Bestimmungen – aufgibt. Das Werk kann – selbst für kommerzielle Zwecke – kopiert, modifiziert und weiterverteilt werden, ohne hierfür um Erlaubnis bitten zu müssen.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse |
Gnuplot script to generate this plot
#!/usr/bin/gnuplot
# gnuplot
### Variablen - die wichtigsten Paramter dieser Grafik:
# (in der Regel wird es reichen für eine neue Grafik diese Werte zu ändern)
my_data = 'Altersstruktur_von_Dinslaken_-_Teilbereich.dat'
my_xrange_min = '1989'
my_xrange_max = '2024'
my_xtics_years = '5'
my_mxtics = '5'
my_yrange_min = '2000' # bei '-1' wird der erste
# Achsenstrich unter Null berechnet
my_yrange_max = '*' # hier ist '*' erlaubt und sinnvoll
my_ytics = '5000'
my_ymtics = '5'
### Allgemeines zu den Eingabedaten
set timefmt "%Y" # Zeitangaben in TT.MM.YYYY
set datafile separator ";" # Spaltenseparator
set datafile commentschars "#" # Kommentarzeichen
stats my_data u (strptime("%Y",strcol(1))) nooutput
my_diff = (STATS_max - STATS_min) / (60*60*24*365.25)
print ' -----Stats-(Timestamp)----------------------'
print ' Erster Wert der Datendatei: ', strftime("%Y", STATS_min)
print ' Letzter Wert der Datendatei: ', strftime("%Y", STATS_max)
print ' Diff in Jahren: ', sprintf("%.2f", my_diff)
print ' --------------------------------------------'
# Anmerk.: die ausgegebenen Timestamps können in einer Shell bequem mit
# 'date -d @[Wert]' in humanleserliches Format gewandelt werden
### Allgemeines zur Ausgabe
unset key # alle Werte für Legende aufheben (werden gleich gesetzt)
set key vertical maxrows 2 # max Anzahl Zeilen der Legende
set key at graph 0.05,0.05 # Legende weit links-unten (Pos. bezogen auf Graph)
set key left bottom # Punkt der Legendenbox an dem sie ausgerichtet wird
set key nobox # Legende o. Rahmen (zu Testzwecken box setzen!)
set key noopaque # Transparenz
set key width -10 # Breite schmaler
set key samplen 2 # Breite der Linenbeispiele
# das 'unset key' einfach auskommentieren um eine
# vernünftige Legende auszugeben
set style data lines # wird bei 'plot' überschrieben
set style fill transparent solid 0.4 # wird ebenfalls bei 'plot' überschrieben
set border 3 # Rahmen unten (Bit 1) und links (+ Bit 2)
set grid # Gitterlinien verwenden
# Gitterlinien per Hand setzen falls gewünscht
set style line 1 linetype rgb '#4F4F4F' linewidth 0.5 dashtype 2 # Def. Major-grid
set style line 2 linetype rgb '#9F9F9F' linewidth 0.5 dashtype 3 # def. Minor-grid
set grid xtics mxtics # eventuell noxtics und nomxtics
set grid ytics mytics # eventuell noytics und nomytics
set grid back # Gitter im Hintergrund
set grid linestyle 1, linestyle 2 # Setzen des linestyle für Major u. Minor
# show grid # Kontrollausgabe auf der Konsole
### Farben - nummerische Equavalente zu Namen nach:
# https://www2.uni-hamburg.de/Wiss/FB/15/Sustainability/schneider/gnuplot/colors.htm
# Die beiden Ziffen am Ende der Variablen geben opacity/transparenz an
#
my_darkred_00 = '#008B0000'; my_darkred_20 = '#208B0000';
my_darkred_40 = '#408B0000'; my_darkred_60 = '#608B0000';
my_darkred_80 = '#808B0000'; my_darkred_a0 = '#a08B0000';
my_darkred_c0 = '#c08B0000'; my_darkred_e0 = '#e08B0000';
#
my_darkgreen_00 = '#00006400'; my_darkgreen_20 = '#20006400';
my_darkgreen_40 = '#40006400'; my_darkgreen_60 = '#60006400';
my_darkgreen_80 = '#80006400'; my_darkgreen_a0 = '#a0006400';
my_darkgreen_c0 = '#c0006400'; my_darkgreen_e0 = '#e0006400';
#
my_darkblue_00 = '#0000008B'; my_darkblue_20 = '#2000008B';
my_darkblue_40 = '#4000008B'; my_darkblue_60 = '#6000008B';
my_darkblue_80 = '#8000008B'; my_darkblue_a0 = '#a000008B';
my_darkblue_c0 = '#c000008B'; my_darkblue_e0 = '#e000008B';
#
my_darkmagenta_00 = '#008B008B'; my_darkmagenta_20 = '#208B008B';
my_darkmagenta_40 = '#408B008B'; my_darkmagenta_60 = '#608B008B';
my_darkmagenta_80 = '#808B008B'; my_darkmagenta_a0 = '#a08B008B';
my_darkmagenta_c0 = '#c08B008B'; my_darkmagenta_e0 = '#e08B008B';
#
my_darkorange_00 = '#00FF8C00'; my_darkorange_20 = '#20FF8C00';
my_darkorange_40 = '#40FF8C00'; my_darkorange_60 = '#60FF8C00';
my_darkorange_80 = '#80FF8C00'; my_darkorange_a0 = '#a0FF8C00';
my_darkorange_c0 = '#c0FF8C00'; my_darkorange_e0 = '#e0FF8C00';
#
my_darkturquoise_00 = '#0000CED1'; my_darkturquoise_20 = '#2000CED1';
my_darkturquoise_40 = '#4000CED1'; my_darkturquoise_60 = '#6000CED1';
my_darkturquoise_80 = '#8000CED1'; my_darkturquoise_a0 = '#a000CED1';
my_darkturquoise_c0 = '#c000CED1'; my_darkturquoise_e0 = '#e000CED1';
#
my_black_00 = '#00000000'; my_black_20 = '#20000000';
my_black_40 = '#40000000'; my_black_60 = '#60000000';
my_black_80 = '#80000000'; my_black_a0 = '#a0000000';
my_black_c0 = '#c0000000'; my_black_e0 = '#e0000000';
### Bereiche/Format/etc X-Achse
set xdata time # X-Achse als Zeitachse
set xlabel 'Jahr' # Beschriftung X-Achse
set xlabel offset 0, 0.75 # Schrift etwas höher
set xrange [ my_xrange_min : my_xrange_max]
# Wertebreich der X-Achse
set xtics '1000', (60*60*24*365.25) * my_xtics_years
# xtics in Sekunden
# der Beginn (Wert vor dem Komma) der X-Einteilung
# kann außerhalb xrange liegen
set xtics offset 0, 0.5 # Beschriftung näher an die X-Achse
set mxtics my_mxtics # Skalenstriche
set xtics nomirror # Nur unten Skalieren
set format x '%3Y' # Beschr.format JJJJ (bei 3 Stellen o. führend 0)
set xtics out # Skal. aussen damit sie nicht von Grafik
# überschr. wird
### Bereiche/Format/etc Y-Achse
set ylabel 'Einwohlnerzahl' offset 2 # Abstand Achse/Label
# Untere Begrenzung des Bereichs der Y-Achse
# Falls my_yrange_min wird der erste Achsenstrich unterhalb der
# Nulllinie berechnen falls my_yrange gleich -1
if (my_yrange_min eq '-1' ) {
my_yrange_min = - my_ytics / my_ymtics
# für den Fall Nullline etwas fetter
set arrow from my_xrange_min, '0' to my_xrange_max, '0' nohead lc rgb '#C0000000' back
}
set yrange [ my_yrange_min : ]
# Obere Begrenzung des Bereichs der Y-Achse
# wir Testen ob der Wert der Var. my_yrange_max ein '*' ist und reagieren
# entsprechend weil der '*' sich nicht direkt via Var. setzen lässt.
if ( ( my_yrange_max eq '*' )) set yrange [ : * ]
if (!( my_yrange_max eq '*' )) set yrange [ : my_yrange_max ]
set ytics my_ytics # Anzahl der kleinen Teilstriche
set ytics offset 0.9 # Schrift etwas nach rechts
set ytics nomirror # oben keine Teilstriche
# Abfrage nach Betriebssystem und Aufruf spezifischer Befehle für
# Dezimal- und Tausenderseparator für die y-Achse
# Bei dem Betriebssystemaufruf verwenden wir den Befehl 'echo' weil den
# jedes Betriebssysem kennt und so keinen gnuplot-Fehler erzeugt
if ("Linux" eq "`echo $(uname -s)`") {
# Einstellungen für Linux
print "Wir setzten Dezimal- und Tausenderseparator nach Linux Art"
set decimalsign locale "de_DE.utf8"
set format y "%'.0f"
} else {
# Einstellungen für Windows
print "Wir setzten Dezimal- und Tausenderseparator nach Windows Art"
set decimalsign locale;
set decimalsign ",";
set format y "%'g"
}
set mytics my_ymtics # Unterskalierung
set ytics out # Skal. aussen da sie sonst von Grafik
# überschr. wird
### Außenränder (keine Angabe entspricht Automatik)
# keine Angabe hinter Xmargin entspr auto
# zur Positionierung siehe 'Coordinates' in:
# http://gnuplot.sourceforge.net/docs_4.2/node49.html#448
set lmargin
set rmargin at screen 0.990
set bmargin at screen 0.175
set tmargin at screen 0.960
# grauer Hintergrund für Testzwecke
# set object rectangle from screen 0,0 to screen 1,1 fillcolor rgb my_black_e0 behind
### Dateiausgabe definieren
# Ausgabeformat: Wir erzeugen SVG
set output 'Altersstruktur_von_Dinslaken_-_Teilbereich.svg'
set encoding utf8 # falls bei Windows iso_8859_1 stellen wir es um
set term svg size 800,400 font "Arial,16"
# Die Parameter von 'set term' sind so gewählt, das man in Wikipedia bei einer
# Einbindung [[Datei:Einwohnerentwicklung_von_Moers.svg|mini|400px|Text]] noch Schrift/Details
# erkennen kann.
### Log10 Skalierung für Y-Achse wählen
# Für Formatparam siehe http://gnuplot.sourceforge.net/docs_4.2/node184.html
# Wert für ytics hier mit 10 Überschreiben damit die Mantisse wegfallen kann.
# Ansonsten müsste sie wie in 'set format y "%.1l*10^{%L}"; set ytics 5' angegeben
# werden was ungerade Werte ergibt.
# xrange muss größer Null beginnen. Kann oben mit my_yrange_min auf 10, 100, 1000 ...
# gesetzt werden oder hier auskommentieren.
# set logscale y 10; set format y " 10^{%L}"; set ytics 10; set mytics 10;
# set lmargin 5 # ev. bei 'Schwestergrafik' gleichen fixen Wert setzen.
# set yrange [ 100 : 1000000 ] # yrange manuell Anpassen!!!
### Abkürzungen hinter dem Plot-Befehl:
# u : using
# w : with
# lc : linecolor
# lt : linetype
# lw : linewidth
# pt : pointtype
# ps : pointsize
# lp : linespoints
# p : points
# t : title
# not : notitle
# filledc : filledcurves (Bsp.: File:Einwohnerentwicklung von Wanne-Eickel.svg)
# rgb : RedGreenBlue
# ax ; axes (bei der Plotanweisung meist x1y1)
# dt ; dashtype (Wert 1 entspricht normale durchgezogene Linie)
### Daten per Here-Document
# (siehe Abschntt 'Inline data and datablocks' in
# http://www.gnuplot.info/docs_5.2/Gnuplot_5.2.pdf )
#
$my_HD_1 << EndOfData_1
# bei 'plot' mit '$my_HD_1 use 1:2 with ...' einbinden
...
EndOfData_1
### Plot
# Jede Kurve wird zweimal gezeichnet. Beim ersten mal mit etwas Transparenz
# damit es heller wird. Beim zweiten mal werden die Punkt dunkel
# nachgezeichnet. Dadurch sollte der Betrachter besser erkennen können, wo
# Messpunkte fehlen.
#
# Erzeugen der Ausgabe
plot \
my_data u 1:3 ax x1y1 w lp lc rgb my_darkgreen_40 lt 1 lw 1.5 pt 7 ps 0.22 t 'Anzahl Personen ab 65 Jahre („Senioren“)',\
my_data u 1:3 ax x1y1 w p lc rgb my_darkgreen_00 lt 1 lw 1.5 pt 7 ps 0.22 not ,\
my_data u 1:2 ax x1y1 w lp lc rgb my_darkblue_40 lt 1 lw 1.5 pt 7 ps 0.22 t 'Anzahl Personen bis 14 Jahre („Kinder“)',\
my_data u 1:2 ax x1y1 w p lc rgb my_darkblue_00 lt 1 lw 1.5 pt 7 ps 0.22 not ,\
# $my_HD_1 u 1:2 ax x1y1 w lp lc rgb my_darkred_40 lt 1 lw 1.5 pt 7 ps 0.22 t 'Einw. Entw.',\
# $my_HD_1 u 1:2 ax x1y1 w p lc rgb my_darkred_00 lt 1 lw 1.5 pt 7 ps 0.22 not ,\
Daten
Die folgenden Daten bitte in eine Textdatei unter dem Namen "Altersstruktur_von_Dinslaken_-_Teilbereich.dat" abspeichern und ins gleiche Verzeichnis wie das GnuPlot-Script ablegen.
# Quelle:
# Landesdatenbank IT.NRW Tabelle 12411-05ir https://www.landesdatenbank.nrw.de/
1990 ;10852;8203
1991 ;11161;8421
1992 ;11392;8728
1993 ;11508;9032
1994 ;11504;9314
1995 ;11592;9673
1996 ;11627;9843
1997 ;11650;9992
1998 ;11648;10211
1999 ;11586;10606
2000 ;11501;11027
2001 ;11345;11550
2002 ;11074;12015
2003 ;10672;12461
2004 ;10252;12925
2005 ;9835;13351
2006 ;9545;13780
2007 ;9202;13961
2008 ;8974;14223
2009 ;8768;14545
2010 ;8612;14626
2011 ;8424;14370
2012 ;8162;14446
2013 ;8094;14539
2014 ;8090;14755
2015 ;8121;14987
2016 ;8341;15204
2017 ;8281;15596
2018 ;8408;15899
2019 ;8473;16137
2020 ;8565;16339
2021 ;8651;16572
2022 ;9002;16789
2023 ;9032;17135
# EOF
In dieser Datei abgebildete Objekte
Motiv
Einige Werte ohne einen Wikidata-Eintrag
5. November 2024
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
---|---|---|---|---|---|
aktuell | 16:43, 5. Nov. 2024 | 800 × 400 (62 KB) | Makrameus | Uploaded own work with UploadWizard |
Dateiverwendung
Die folgende Seite verwendet diese Datei:
Metadaten
Diese Datei enthält weitere Informationen (beispielsweise Exif-Metadaten), die in der Regel von der Digitalkamera oder dem verwendeten Scanner stammen. Durch nachträgliche Bearbeitung der Originaldatei können einige Details verändert worden sein.
Kurztitel | Gnuplot |
---|---|
Bildtitel | Produced by GNUPLOT 5.2 patchlevel 8 |
Breite | 800 |
Höhe | 400 |