File:Einwohnerentwicklung von Elmshorn.svg

Original file (SVG file, nominally 800 × 400 pixels, file size: 53 KB)

Captions

Captions

Add a one-line explanation of what this file represents

Summary

edit
Description
Deutsch: Einwohnerentwicklung von Elmshorn
Source Own work
Author Summer ... hier! (talk) 12:42, 30 May 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 by v.
#!/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_Elmshorn.dat'
my_xrange_min         = '01.01.1875'
my_xrange_max         = '31.12.2016'
my_xtics_years        = '25'
my_mxtics             = '5'
my_yrange_min         = '0'
my_yrange_max         = '*'    # Nur hier ist '*' erlaubt und sinnvoll
my_ytics              = '10000'
my_ymtics             = '5'


# Allgemeines zu den Eingabedaten
set timefmt "%d.%m.%Y"     # Zeitangaben in TT.MM.YYYY
set datafile separator ";" # Spaltenseparator 


# Allgemeines zur Ausgabe
set key vertical maxrows 6 # Max Anzahl Zeilen
set key left top           # Legende links oben
unset key                  # keine Legende (direkt vorher gesetzt Werte unwirksam)
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
# Gitterlinienen per Hand setzen falls gewünscht 
set style line 1 linetype rgb '#696969' linewidth 0.5 dashtype 0 # Def. Major-grid
set style line 2 linetype rgb '#C9C9C9' 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.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 '%Y'          # Beschriftungsformat JJJJ
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
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
# == 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 0.9 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 0.9 rotate by +60 center front
# == Dädärä
#set obj rect from '07.10.1949', graph 0 to '03.10.1990' , graph 1 back
#set label "DDR"                   at '01.01.1970', graph 0.9 rotate by +60 center front
# == Markierung für Großstadtgrenze 
# Mit Ein-/Auskommentieren festlegen ob bei 100.000 eine vertikale Linie gezogen werden soll 
 set arrow from my_xrange_min, '100000' to my_xrange_max, '100000' nohead lc rgb '#B0FF0000' back
# == Markierung für Millionenstadtgrenze 
# Mit Ein-/Auskommentieren festlegen ob bei 100.000 eine vertikale Linie gezogen werden soll 
 set arrow from my_xrange_min, '1000000' to my_xrange_max, '1000000' nohead lc rgb '#B0FF0000' back


# Außenränder (ohne Angabe entspricht Automatik)
set bmargin 
set lmargin 
set rmargin 1.5 # rechts entspr. der Wert bei Auto etwas 2.8
set tmargin 


# Ausgabeformat: Wir erzeugen SVG
# Die Ausgabedaten leiten wir bei UNIX in eine Pipe und sind so beim Namen der
# Ausgabedatei flexibel (Aufruf: Progname.plt > Ausgabe-svg) 
# Windowsbenutzer, die mit Pipes nicht umgehen könnten, sollten hier hier das 
# folgende 'set output ...' auskommentieren und den Dateinamen ggf. ersetzen. 
# set output 'Einwohnerentwicklung_von_Elmshorn.svg' 
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_Elmshorn.svg|mini|400px|Text]] noch Schrift/Details 
# erkennen kann. 


# 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


# Daten per HereDocument
# (müssen vor dem plot-Befehl definiert werden)
#
$my_HD_1 << EndOfData_1
# bei 'plot' mit '§my_HD_1 use 1:2 with ...' einbinden
...
EndOfData_1


# 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 erkenen können, wo
# Messpunkte fehlen. 
#
# Erzeugen der Ausgabe 
plot \
  my_data u 1:2 w lp lc rgb my_darkblue_40 lt 1 lw 1.5 pt 7 ps 0.3   t 'Einw. Entw.',\
  my_data u 1:2 w  p lc rgb my_darkblue_00 lt 1 lw 1.5 pt 7 ps 0.3 not              ,\

Daten

edit

Die folgenden Daten bitte in eine Textdatei unter dem Namen "Einwohnerentwicklung_von_Elmshorn.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/Elmshorn#Einwohnerentwicklung
#
#
30.06.1875 ;  7000
30.06.1900 ; 13640
30.06.1939 ; 22000
30.06.1949 ; 32432
06.06.1961 ; 35215
27.05.1970 ; 41155
30.06.2002 ; 48000
31.08.2003 ; 48958
30.06.2004 ; 48379
30.06.2005 ; 49386
30.06.2006 ; 48279
30.06.2007 ; 48052
30.06.2008 ; 48183
30.06.2010 ; 48924
30.06.2011 ; 48993
30.06.2012 ; 47490
31.08.2014 ; 50024
31.12.2015 ; 51017
31.12.2016 ; 49206

File history

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

Date/TimeThumbnailDimensionsUserComment
current12:42, 30 May 2018Thumbnail for version as of 12:42, 30 May 2018800 × 400 (53 KB)Summer ... hier! (talk | contribs)== {{int:filedesc}} == {{Information |Description = {{de|Einwohnerentwicklung von Elmshorn}} |Source = {{own}} |Author = ~~~~ |Date = }} == {{int:license-header}} == {{self|Cc-zero}} == Gnuplot script to generate this plot == {{gnuplot}}{{ValidSVG}}<!--{{Created with Gnuplot | v }}--> <source lang="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 ...

There are no pages that use this file.

File usage on other wikis

The following other wikis use this file:

Metadata