File:Einwohnerentwicklung von Bamberg.svg
Original file (SVG file, nominally 800 × 400 pixels, file size: 61 KB)
Captions
Summary
[edit]DescriptionEinwohnerentwicklung von Bamberg.svg |
Deutsch: Einwohnerentwicklung von Bamberg |
|||
Source | Own work | |||
Author | Summer ... hier! | |||
Permission (Reusing this file) |
I, the copyright holder of this work, hereby publish it under the following license:
|
|||
SVG development InfoField | ||||
Source code InfoField | Gnuplot code#!/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_Bamberg.dat'
my_xrange_min = '01.01.1599'
my_xrange_max = '31.12.2017'
my_xtics_years = '50'
my_mxtics = '5'
my_yrange_min = '0'
my_yrange_max = '*' # Nur hier ist '*' erlaubt und sinnvoll
my_ytics = '20000'
my_ymtics = '4'
# 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 left top # Legende links oben
set key opaque # ohne Transparenz
set key samplen 2 # Breite der Linenbeispiele
unset key # direkt vorher gesetzte Werte aufgehoben; ggf auskommentieren!
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 '%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
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
# set label "H. Franzosenzeit" at '01.01.1810', graph 0.3 rotate by +60 center
# == 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 front
set label "1. Weltkrieg" at '30.06.1916', graph 0.3 rotate by +60 center front
# == 2. Weltkrieg
set obj rect from '01.09.1939', graph 0 to '04.05.1945' , graph 1 front
set label "2. Weltkrieg" at '30.06.1942', graph 0.3 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 (keine Angabe entspricht Automatik)
set bmargin
set lmargin
set rmargin 1.5 # rechts entspr. der Wert bei Auto etwa 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 das Kommentar-
# zeichen vor dem 'set output ...' folgenden Befehl entfernen.
# set output 'Einwohnerentwicklung_von_Bamberg.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_Bamberg.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
# filledc : filledcurves (Bsp.: File:Einwohnerentwicklung von Wanne-Eickel.svg)
# rgb : RedGreenBlue
# 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
# 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 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 w p lc rgb my_darkblue_00 lt 1 lw 1.5 pt 7 ps 0.22 not ,\
# $my_HD_1 u 1:2 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 w p lc rgb my_darkred_00 lt 1 lw 1.5 pt 7 ps 0.22 not ,\
DataDie folgenden Daten bitte in eine Textdatei unter dem Namen "Einwohnerentwicklung_von_Bamberg.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!|Benutzer Diskussion:Summer ... hier!]] oder [[:de:Grafikwerkstatt|Grafikwerkstatt]] nachfragen).
Vor Änderungen der Struktur dieses Abschnitts bitte beachten, das die Daten zur Wartung anderer Grafiken benutzt werden. [[Special:WhatLinksHere/File:Einwohnerentwicklung_von_Bamberg.svg|Dies]] sind Dateien, die möglicherweise die Daten dieses Abschnitts verwenden.
<syntaxhighlight lang="text" title="datei:Einwohnerentwicklung_von_Bamberg.dat">
#
# Quelle:
# https://de.wikipedia.org/wiki/Bamberg#Einwohnerentwicklung
#
30.06.1599;11500
30.06.1618;12000
30.06.1648; 7000
30.06.1795;16000
30.06.1811;17095
01.06.1830;18600
01.12.1840;20900
03.12.1852;20594
03.12.1855;22391
03.12.1858;23456
03.12.1861;23500
03.12.1864;25200
03.12.1867;26100
01.12.1871;25700
01.12.1875;26951
01.12.1880;29587
01.12.1885;31500
#
01.12.1890;35815
02.12.1895;38940
01.12.1900;41823
01.12.1905;45483
01.12.1910;48063
01.12.1916;40344
05.12.1917;41395
08.10.1919;49179
16.06.1925;50152
16.06.1933;54161
17.05.1939;59466
31.12.1945;75193
29.10.1946;74733
13.09.1950;76180
25.09.1956;75116
06.06.1961;74115
31.12.1965;72869
#
27.05.1970;70581
31.12.1975;74236
31.12.1980;71928
31.12.1985;69920
25.05.1987;69100
31.12.1990;70521
31.12.1995;69652
31.12.2000;69036
30.06.2005;69934
30.06.2006;70063
31.12.2006;69574
31.12.2007;69884
31.12.2008;69989
31.12.2009;69827
31.12.2010;70004
31.12.2011;70084
31.12.2012;70863
#
31.12.2013;71167
31.12.2014;72194
31.12.2015;73331
31.12.2016;75743
31.12.2017;77179
# EOF
|
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 14:44, 26 November 2018 | 800 × 400 (61 KB) | Summer ... hier! (talk | contribs) | +Wert 2017 | |
23:24, 14 January 2018 | 800 × 400 (31 KB) | Summer ... hier! (talk | contribs) | {{Information |Description = {{de|Einwohnerentwicklung von Bamberg}} |Source = {{own}} |Author = ~~~~ |Date = }} == {{int:license-header}} == {{self|Cc-zero}} == Gnuplot script to generate this plot == {{gnuplot}}{{Valid... |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
File usage on other wikis
The following other wikis use this file:
- Usage on de.wikipedia.org
Metadata
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it. If the file has been modified from its original state, some details such as the timestamp may not fully reflect those of the original file. The timestamp is only as accurate as the clock in the camera, and it may be completely wrong.
Short title | Gnuplot |
---|---|
Image title | Produced by GNUPLOT 5.0 patchlevel 3 |
Width | 800 |
Height | 400 |