File:Einwohnerentwicklung von Köln.svg

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

Original file(SVG file, nominally 1,600 × 400 pixels, file size: 136 KB)

Captions

Captions

Add a one-line explanation of what this file represents

Summary[edit]

Description
Deutsch: Einwohnerentwicklung von Köln. Die Grafik ist 1400 Pixel breit und lässt sich in WP gut mit der Hälte, also 700px einbinden
Source Own work
Author Summer ... hier! (talk) 14:28, 10 January 2018 (UTC)

Licensing[edit]

I, the copyright holder of this work, hereby publish it under the following license:
Creative Commons CC-Zero This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.

Gnuplot script to generate this plot[edit]

 
This plot was created with Gnuplot.
#!/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               = 'Einwohnerentwicklung_von_Köln.dat'
my_xrange_min         = '01.01.40'
my_xrange_max         = '31.12.2018'
my_xtics_years        = '100'
my_mxtics             = '5'
my_yrange_min         = '0'    # bei '-1' wird der erste 
                               # Achenstrich unter Null berechnet
my_yrange_max         = '*'    # hier ist '*' erlaubt und sinnvoll
my_ytics              = '250000'
my_ymtics             = '5'
ist_gemeinde          = '1'    # 1 für ja, 0 für nein
                               # Falls ja, werden Marker für Grossstadt 
                               # und Mio.Stadt gesetzt
WW1                   = '0.90' # horiz. Pos. des WW1 Schriftzugs
WW2                   = '0.90' # horiz. Pos. des WW2 Schriftzugs
DDR                   = '0.00' # horiz. Pos. des Deut.Einheit-Schriftzugs 
                               # (0 entspr. keiner Ausgabe)

### Allgemeines zu den Eingabedaten
set timefmt "%d.%m.%Y"          # Zeitangaben in TT.MM.YYYY
set datafile separator ";"      # Spaltenseparator 
set datafile commentschars "#"  # Kommentarzeichen 
  stats my_data  u (strptime("%d.%m.%Y",strcol(1))) nooutput 
  my_diff = (STATS_max - STATS_min) / (60*60*24*365.25)
  print '     -----Stats-(Timestamp)----------------------'
  print '     Erster Wert der Datendatei:  ', strftime("%d.%m.%Y", STATS_min)
  print '     Letzter Wert der Datendatei: ', strftime("%d.%m.%Y", STATS_max)
  print '     Diff in Jahren:              ', my_diff
  print '     --------------------------------------------'
  # Anmerk.: die ausgegebenen Timestamps können in einer Shell bequem mit 
  # 'date -d @[Wert]' in humanleseriches Format gewandelt werden

### Allgemeines zur Ausgabe
set key vertical maxrows 6 # Max Anzahl Zeilen
# set key center top       # Legende links oben (mit rel. Angaben)
set key at graph 0.05,0.95 # Ĺegende weit links-oben (mit Angaben bez. auf Graph)
set key left top           # Punkt der Legendenbox an dem sie Ausgerichtet wird
set key nobox              # kein Rahmen (zu Testzwecken box setzen!)
set key noopaque           # Transparenz 
set key samplen 2          # Breite der Linenbeispiele 
unset key                  # direkt vorher gesetzte Werte aufgehoben; ggf.
                           # auskommentieren, dann wird die Legende gesetzt! 
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 '01.01.0000', (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 'Einwohnerzahl' offset 2 # Abstand Achse/Label 
# Untere Begrenzung des Bereichs der Y-Achse
# Falls my_yrange_min wird der erste Achsenstrich unterhalb der
# Nulllinie berechnet
if (my_yrange_min -1 ) my_yrange_min = - my_ytics / my_ymtics
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.5       # Schrift etwas nach rechts
set ytics nomirror         # oben keine Teilstriche
set decimalsign locale "de_DE.utf8" # Stelle Input und Output auf "," um 
                           # set decimalsign ',' würde nur Output umstellen, 
set format y  "%'.0f"      # Ausgabeformat
set mytics my_ymtics       # Unterskalierung 
set ytics  out             # Skal. aussen da sie sonst von Grafik 
                           # überschr. wird


### Markierungsbalken für die beiden Weltkriege etc.
# Die set-Befehle ggf. auskommentieren
# Attribute für Markierungsbalken
set style rect fillcolor lt -1 fillstyle solid 0.1 noborder
#
# == Dreißigjähriger Krieg
  set obj rect from '23.05.1618', graph 0 to '24.10.1648' , graph 1 back
  set label "Dreißigjähriger Krieg" at '30.06.1633', graph 0.8 rotate by +60 center front
# == Siebenjähriger Krieg
# set obj rect from '29.08.1756', graph 0 to '21.09.1762' , graph 1 back
# set label "Siebenjähriger Krieg"  at '30.06.1759', graph 0.8 rotate by +60 center front
# == Hamburger Franzosenzeit
# set obj rect from '30.06.1806', graph 0 to '30.06.1814' , graph 1 back
# set label "H. Franzosenzeit"      at '01.01.1810', graph 0.3 rotate by +60 center front
# == Befreiungskriege
# set obj rect from '26.02.1813', graph 0 to '20.11.1815' , graph 1 back
# set label "Befreiungskriege"      at '30.06.1814', graph 0.8 rotate by +60 center front
# == 1. Weltkrieg
  set obj rect from '28.07.1914', graph 0 to '11.11.1918' , graph 1 back
  set label "1. Weltkrieg"          at '30.06.1916', graph WW1 rotate by +60 center front
# == 2. Weltkrieg
  set obj rect from '01.09.1939', graph 0 to '04.05.1945' , graph 1 back
  set label "2. Weltkrieg"          at '30.06.1942', graph WW2 rotate by +60 center front
# == Dädärä
if (DDR > 0) {
  set obj rect from '07.10.1949', graph 0 to '03.10.1990' , graph 1 back
  set label "Deut. Teilung"         at '01.01.1970', graph DDR rotate by +60 center front
} 


### Markierung für Groß- und Millionenstadtgrenze 
# wenn oben die Variable 'gemeinde' auf '1' gesetzt wurde setzen wir Maker
if (ist_gemeinde eq '1') { 
  # je einen Marker (arrow) für 100.000 und 1.000.000
  set arrow from my_xrange_min,  '100000' to my_xrange_max,  '100000' nohead lc rgb '#B0FF0000' back
  set arrow from my_xrange_min, '1000000' to my_xrange_max, '1000000' nohead lc rgb '#B0FF0000' back
}  


### Einzelwerte (Beispiel)
# set label 1 'Bsp. Text 1' at '25.05.1987',  5000 point pointtype 3 pointsize 0.8
# set label 2 'Bsp. Text 2' at '09.05.2011', 10000 point pointtype 3 pointsize 0.8


### 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
# Die Ausgabedaten leiten wir bei UNIX in eine Pipe und sind so beim Namen der
# Ausgabedatei flexibel (Aufruf: Einwohnerentwicklung_von_Köln.gpl > Einwohnerentwicklung_von_Köln.svg) 
# Windowsbenutzer, die mit Pipes nicht umgehen könnten, sollten das Kommentar-
# zeichen vor dem  'set output ...' folgenden Befehl entfernen. 
# set output 'Einwohnerentwicklung_von_Köln.svg' 
  set term svg size 1600,400 font "Arial,16"
# Die Parameter von 'set term' sind so gewählt, das man in Wikipedia bei einer 
# Einbindung [[Datei:Einwohnerentwicklung_von_Köln.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)


### 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:2 ax x1y1 w lp lc rgb my_darkblue_40  lt 1 lw 1.5 pt 7 ps 0.22   t 'Einw. Entw.',\
  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[edit]

Die folgenden Daten bitte in eine Textdatei unter dem Namen "Einwohnerentwicklung_von_Köln.dat" abspeichern und ins gleiche Verzeichnis wie das GnuPlot-Script ablegen.

Update der Daten und Überschreiben der Grafik ausdrücklich erwünscht (bei Problemen beim Erstellen einer neuen Grafik unter de:Benutzer Diskussion:Summer ... hier! oder de:Wikipedia:Grafikwerkstatt nachfragen).

Vor Änderungen der Struktur dieses Abschnitts bitte beachten, das die Daten zur Wartung anderer Grafiken benutzt werden. Dies sind Dateien, die möglicherweise die Daten dieses Abschnitts verwenden.

#
# Quelle: 
# https://de.wikipedia.org/wiki/Einwohnerentwicklung_von_K%C3%B6ln 
#
#
30.06.50  ;30000
30.06.250 ;15000
30.06.350 ;15000
30.06.1140;20000
30.06.1430;40000
30.06.1600;40000
30.06.1714;42015
30.06.1735;44568
30.06.1794;44512
30.06.1801;42024
30.06.1807;40400
30.06.1810;45029
01.12.1816;49276
01.12.1819;55355
01.12.1822;56527
01.12.1825;59049
01.12.1828;61059
01.12.1831;65953
03.12.1834;67302
03.12.1837;72237
03.12.1840;75858
03.12.1843;83418
03.12.1846;90246
03.12.1849;94789
03.12.1852;101091
03.12.1855;106852
03.12.1858;114477
03.12.1861;120568
03.12.1864;122162
03.12.1867;125172
01.12.1871;129233
01.12.1875;135371
01.12.1880;144772
01.12.1885;161401
01.12.1890;281681
02.12.1895;321564
01.12.1900;372229
31.12.1901;380518
31.12.1902;392882
31.12.1903;406420
31.12.1904;417480
01.12.1905;428722
31.12.1906;440376
31.12.1907;451134
31.12.1908;461891
31.12.1909;472649
01.12.1910;516527
31.12.1911;525671
31.12.1912;538302
31.12.1913;550540
31.12.1914;642848
01.12.1916;595853
05.12.1917;609244
08.10.1919;633904
31.12.1919;644206
31.12.1920;657175
31.12.1921;665629
31.12.1922;683363
31.12.1923;690605
31.12.1924;696168
16.06.1925;680704
31.12.1925;705477
31.12.1926;713633
31.12.1927;723753
31.12.1928;733075
31.12.1929;736914
31.12.1930;740082
31.12.1931;739726
31.12.1932;741283
16.06.1933;756605
31.12.1933;759648
31.12.1934;760422
31.12.1935;761263
31.12.1936;762154
31.12.1937;765468
31.12.1938;767102
17.05.1939;772221
31.12.1939;767222
31.12.1940;733500
31.12.1941;690000
31.12.1942;648200
31.12.1943;561600
31.12.1944;472900
01.01.1945;177700
01.02.1945;152000
01.03.1945;140000
01.04.1945;169000
01.05.1945;138500
01.06.1945;175000
01.07.1945;250000
01.08.1945;324800
01.09.1945;359200
01.10.1945;398800
01.11.1945;423200
01.12.1945;447000
31.12.1945;453566
29.10.1946;491380
31.12.1946;494815
31.12.1947;515355
31.12.1948;543765
31.12.1949;573557
13.09.1950;594941
31.12.1950;603283
31.12.1951;630232
31.12.1952;647540
31.12.1953;670031
31.12.1954;688765
31.12.1955;712561
25.09.1956;713505
31.12.1956;718722
31.12.1957;737991
31.12.1958;756203
31.12.1959;773280
31.12.1960;803616
06.06.1961;809247
31.12.1961;816542
31.12.1962;827659
31.12.1963;835832
31.12.1964;842061
31.12.1965;854479
31.12.1966;860200
31.12.1967;854717
31.12.1968;855886
31.12.1969;864754
27.05.1970;848352
31.12.1970;847037
31.12.1971;846479
31.12.1972;841537
31.12.1973;832396
31.12.1974;825792
31.12.1975;1013771
31.12.1976;981021
31.12.1977;976761
31.12.1978;976534
31.12.1979;976136
31.12.1980;976694
31.12.1981;971403
31.12.1982;961777
31.12.1983;940663
31.12.1984;922286
31.12.1985;916153
31.12.1986;914336
25.05.1987;928309
31.12.1987;930907
31.12.1988;937482
31.12.1989;946280
31.12.1990;953551
31.12.1991;956690
31.12.1992;960631
31.12.1993;962517
31.12.1994;963817
31.12.1995;965697
31.12.1996;964346
31.12.1997;964311
31.12.1998;962580
31.12.1999;962507
31.12.2000;962884
31.12.2001;967940
31.12.2002;968639
31.12.2003;965954
31.12.2004;969709
31.12.2005;983347
31.12.2006;989766
31.12.2007;995397
31.12.2008;995420
31.12.2009;998105
31.12.2010;1007119
31.12.2011;1013665
31.12.2012;1024373
31.12.2013;1034175
31.12.2014;1046680
31.12.2015;1060582
31.12.2016;1075935
31.12.2017;1080394
31.12.2018;1085664
# EOF

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current09:04, 22 July 2019Thumbnail for version as of 09:04, 22 July 20191,600 × 400 (136 KB)Summer ... hier! (talk | contribs)+Wert 2018
02:00, 2 November 2018Thumbnail for version as of 02:00, 2 November 20181,600 × 400 (134 KB)Summer ... hier! (talk | contribs)breiter: Beschriftung X-Achse
10:10, 9 October 2018Thumbnail for version as of 10:10, 9 October 20181,400 × 400 (134 KB)Summer ... hier! (talk | contribs)+Wert 2016; +Wert 2017
14:28, 10 January 2018Thumbnail for version as of 14:28, 10 January 20181,400 × 400 (59 KB)Summer ... hier! (talk | contribs){{Information |Description = {{de|Einwohnerentwicklung von Köln. Die Grafik ist 1400 Pixel breit und lässt sich in WP gut mit der Hälte, also 700px einbinden}} |Source = {{own}} |Author = ~~~~ |Date = }} == {{int:licen...

There are no pages that use this file.

File usage on other wikis

The following other wikis use this file:

Metadata