Originaldatei(SVG-Datei, Basisgröße: 800 × 400 Pixel, Dateigröße: 72 KB)

Diese Datei und die Informationen unter dem roten Trennstrich werden aus dem zentralen Medienarchiv Wikimedia Commons eingebunden.

Zur Beschreibungsseite auf Commons


Beschreibung

Beschreibung
Deutsch: Einwohnerentwicklung von Weinheim
Quelle Eigenes Werk
Urheber Summer ... hier! (Summer ... hier!)
SVG‑Erstellung
InfoField
 
Der SVG-Code ist valide.
 
Dieses Chart wurde mit Gnuplot erstellt.
 
Dieses Chart verwendet Text-Einbettung.

Lizenz

Ich, der Urheber dieses Werkes, veröffentliche es unter der folgenden Lizenz:
Creative Commons CC-Zero 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.


  1. !/usr/bin/gnuplot
  2. gnuplot


  1. Variablen - die wichtigsten Paramter dieser Grafik:
  2. (in der Regel wird es reichen für eine neue Grafik diese Werte zu ändern)

my_data = 'Einwohnerentwicklung_von_Weinheim.dat' my_xrange_min = '01.01.1439' my_xrange_max = '31.12.2016' my_xtics_years = '50' my_mxtics = '5' my_yrange_min = '0' my_yrange_max = '*' # Nur hier ist '*' erlaubt und sinnvoll my_ytics = '10000' my_ymtics = '5'


  1. Allgemeines zu den Eingabedaten

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


  1. 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

  1. 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

  1. show grid # Kontrollausgabe auf der Konsole


  1. Farben - nummerische Equavalente zu Namen nach:
  2. https://www2.uni-hamburg.de/Wiss/FB/15/Sustainability/schneider/gnuplot/colors.htm Archivkopie in der Wayback Machine
  3. 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';


  1. 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


  1. Bereiche/Format/etc Y-Achse

set ylabel 'Einwohnerzahl' offset 2 # Abstand Achse/Label

  1. Untere Begrenzung des Bereichs der Y-Achse

set yrange [ my_yrange_min : ]

  1. Obere Begrenzung des Bereichs der Y-Achse
  2. wir Testen ob der Wert der Var. my_yrange_max ein '*' ist und reagieren
  3. 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


        1. Markierungsbalken für die beiden Weltkriege etc.
  1. Die set-Befehle ggf. auskommentieren
  2. Attribute für Markierungsbalken

set style rect fillcolor lt -1 fillstyle solid 0.1 noborder

  1. == 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
  1. == Siebenjähriger Krieg
  2. set obj rect from '29.08.1756', graph 0 to '21.09.1762' , graph 1 back
  3. set label "Siebenjähriger Krieg" at '30.06.1759', graph 0.8 rotate by +60 center front
  4. == Befreiungskriege
  5. set obj rect from '26.02.1813', graph 0 to '20.11.1815' , graph 1 back
  6. set label "Befreiungskriege" at '30.06.1814', graph 0.8 rotate by +60 center front
  7. == 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
  1. == 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
  1. == Dädärä
  2. set obj rect from '07.10.1949', graph 0 to '03.10.1990' , graph 1 back
  3. set label "DDR" at '01.01.1970', graph 0.9 rotate by +60 center front
  4. == Markierung für Großstadtgrenze
  5. 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
  1. == Markierung für Millionenstadtgrenze
  2. 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


  1. 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


  1. Ausgabeformat: Wir erzeugen SVG
  2. Die Ausgabedaten leiten wir bei UNIX in eine Pipe und sind so beim Namen der
  3. Ausgabedatei flexibel (Aufruf: Progname.plt > Ausgabe-svg)
  4. Windowsbenutzer, die mit Pipes nicht umgehen könnten, sollten hier hier das
  5. folgende 'set output ...' auskommentieren und den Dateinamen ggf. ersetzen.
  6. set output 'Einwohnerentwicklung_von_Weinheim.svg'

set term svg size 800,400 font "Arial,16"

  1. Die Parameter von 'set term' sind so gewählt, das man in Wikipedia bei einer
  2. Einbindung mini|400px|Text noch Schrift/Details
  3. erkennen kann.


  1. Abkürzungen hinter dem Plot-Befehl:
  2. u : using
  3. w : with
  4. lc : linecolor
  5. lt : linetype
  6. lw : linewidth
  7. pt : pointtype
  8. ps : pointsize
  9. lp : linespoints
  10. p : points
  11. t : title
  12. not : notitle


  1. Daten per HereDocument
  2. (müssen vor dem plot-Befehl definiert werden)

$my_HD_1 << EndOfData_1

  1. bei 'plot' mit '§my_HD_1 use 1:2 with ...' einbinden

... EndOfData_1


  1. Jede Kurve wird zweimal gezeichnet. Beim ersten mal mit etwas Transparenz
  2. damit es heller wird. Beim zweiten mal werden die Punkt dunkel
  3. nachgezeichnet. Dadurch sollte der Betrachter besser erkenen können, wo
  4. Messpunkte fehlen.
  5. 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

Die folgenden Daten bitte in eine Textdatei unter dem Namen "Einwohnerentwicklung_von_Weinheim.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 Benutzer Diskussion:Summer ... hier! oder 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.

<syntaxhighlight lang="text" title="datei:Einwohnerentwicklung_von_Weinheim.dat">

  1. Quelle:
  2. https://de.wikipedia.org/wiki/Weinheim#Einwohnerentwicklung

30.06.1439 ; 1780 30.06.1774 ; 1774 30.06.1812 ; 4039 30.06.1830 ; 5000 30.06.1858 ; 5805 30.06.1859 ; 5929 01.12.1871 ; 6350 01.12.1880 ; 7159 01.12.1890 ; 8243 01.12.1900 ; 11167 01.12.1910 ; 14170 08.10.1919 ; 14550 16.06.1925 ; 15793 16.06.1933 ; 17486 17.05.1939 ; 18561

15.12.1945 ; 19944 13.09.1950 ; 25199 06.06.1961 ; 27859 27.05.1970 ; 29670 31.12.1975 ; 41005 31.12.1980 ; 41654 25.05.1987 ; 41934 31.12.1990 ; 42241 31.12.1995 ; 42812 31.12.2000 ; 42520 31.12.2005 ; 43417 31.12.2010 ; 43682 31.12.2015 ; 44797 31.12.2016 ; 44954 EOF }} }}

Kurzbeschreibungen

Ergänze eine einzeilige Erklärung, was diese Datei darstellt.

In dieser Datei abgebildete Objekte

Motiv

Dateiversionen

Klicke auf einen Zeitpunkt, um diese Version zu laden.

Version vomVorschaubildMaßeBenutzerKommentar
aktuell16:05, 5. Jul. 2018Vorschaubild der Version vom 16:05, 5. Jul. 2018800 × 400 (72 KB)Summer ... hier!== {{int:filedesc}} == {{Information | description = {{de|Einwohnerentwicklung von Weinheim}} | source = {{own}} | author = ~~~ }} == {{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 ändern) my_data ...

Die folgende Seite verwendet diese Datei:

Metadaten