#!/usr/bin/gnuplot # gnuplot # Allgemeines zu den Eingabedaten set timefmt "%d.%m.%Y" # Zeitangaben in TT.MM.YYYY set datafile separator ";" # Spaltenseparator # Allgemeines zur Ausgabe unset key # als Standard keine Legende set style data lines # wird bei 'plot' überschrieben set style fill transparent solid 0.4 # ebenfalls bei 'plot' überschrieben set grid # set border 3 # Bit 1 (unten) + Bit 2 (links) # 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 ['30.06.1625':'30.06.2015'] set xtics '01.01.1000', 60 * 60 * 24 * 365.25 * 50 # xtics in Sekunden # der Beginn der X-Einteilung kann außerhalb xrange # liegen set xtics offset 0, 0.5 # Beschritung näher an die X-Achse set mxtics 5 # Skalenstriche set xtics nomirror # Nur unten Skalieren set format x '%Y' # Beschriftungsformat JJJJ set xtics out # Skal. aussen damit sich nicht von Grafik # überschr. wird # Bereiche/Format/etc Y-Achse set ylabel 'Einwohnerzahl' offset 2 # Abstand Achse/Label set yrange [0:] set ytics 1000 set ytics offset 0.5 # Schrift etwas nach rechts set ytics nomirror 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 5 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 set label "Dreißigjähriger Krieg" at '30.06.1633', graph 0.7 rotate by +90 center # == 1. Weltkrieg set obj rect from '28.07.1914', graph 0 to '11.11.1918' , graph 1 set label "1. Weltkrieg" at '30.06.1916', graph 0.8 rotate by +90 center # == 2. Weltkrieg set obj rect from '01.09.1939', graph 0 to '04.05.1945' , graph 1 set label "2. Weltkrieg" at '30.06.1942', graph 0.8 rotate by +90 center # == Dädärä #set obj rect from '07.10.1949', graph 0 to '03.10.1990' , graph 1 #set label "DDR" at '01.01.1970', graph 0.9 rotate by +60 center # Ausgabeformat: Wir erzeugen SVG # Die Ausgabedaten leiten wir bei UNIX in eine Pipe und sind so bei 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_Steinen_(Baden).dat' 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:Meine_Grafik.svg|mini|400px|Text]] noch Schrift/Details # erkennen kann. # Erzeugen der Ausgabe plot \ 'Einwohnerentwicklung_von_Steinen_(Baden).dat' using 1:2 with linespoints linecolor 'dark-blue' linetype 1 linewidth 1.5 pointtype 7 pointsize 0.30,\
Die folgenden Daten bitte in eine Textdatei unter dem Namen "Einwohnerentwicklung_von_Steinen_(Baden).dat" abspeichern und ins gleiche Verzeichnis wie das GnuPlot-Script ablegen.
Update der Daten und Überschreiben der Grafik ausdrücklich erwünscht.
# # Quelle: # https://de.wikipedia.org/wiki/Steinen_(Baden)#Einwohnerentwicklung # 30.06.1625;695 30.06.1648;561 30.06.1740;870 30.06.1750;1003 30.06.1833;1297 30.06.1839;1905 30.06.1871;2704 30.06.1895;2902 30.06.1900;3140 30.06.1953;4604 30.06.1961;6519 30.06.1970;7596 30.06.1980;8038 30.06.1990;9149 30.06.1995;10133 30.06.2000;10005 30.06.2005;10067 30.06.2010;10143 30.06.2011;10152 30.06.2015;9900 EOF