Allgemeine Ploteinstellungen
Contents
3.4. Allgemeine Ploteinstellungen#
3.4.1. Bibliothek einladen und Beispieldaten#
Bibliotheken die man verwenden möchte muss man immer wieder einladen. In unserem Fall ist dies erstmal numpy
(für Daten) und matplotlib
(zum plotten)
import numpy as np
import matplotlib.pyplot as plt
Als Beispieldaten verwenden wir erneut die Daten aus unserer Kraftmessung
Weg = np.array([0,10,20,30,40])
Kraft_Probe1 = np.array([10,18,24,28,30])
Kraft_Probe2 = np.array([0,10,20,30,40])
3.4.2. Datei speichern#
mit plt.savefig('Dateiname.png', bbox_inches='tight', dpi=150)
bbox_inches='tight'
sorgt dafür das die Beschriftungen immer mit im Bild gespeichert werden (können sonst manchmal abgeschnitten sein)dpi
regelt die Größe des Pixelbildes und damit wie scharf es ist (dots per inch)
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
plt.savefig('plot_1.png', bbox_inches='tight', dpi=150)
3.4.3. Bildgröße#
muss vor plt.plot()
kommen
plt.figure(figsize=(8,5))
… Größe in inces in x,y-Richtung (Default: 6,4)
plt.figure(figsize=(8,5))
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
3.4.4. Schriftart und Schriftgröße#
muss vor plt.plot()
kommen
Schriftgröße:
plt.rcParams.update({'font.size': 20})
Schriftart:
plt.rcParams['font.family'] = 'STIXGeneral'
STIXGeneral = LaTeX Schrift
plt.rcParams.update({'font.size': 20})
plt.rcParams['font.family'] = 'STIXGeneral'
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
3.4.5. Stile (zurücksetzen und Stilarten)#
Führen wir nun erneut den plot ohne die Befehle für Schriftgröße und Schriftart aus, stellen wir fest, dass diese Einstellungen trotzdem weiterhin da sind
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
Um diese zurückzusetzen kann man den Befehl plt.style.use('default')
verwenden
plt.style.use('default')
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
Mit dem Befehl plt.style.use()
kann man nicht nur mit default
die Standardeinstellungen herstellen, man kann auch verschiedene Stiltypen verwenden.
Die Liste aller Stiltypen erhält man mit plt.style.available
plt.style.available
Um zu schauen wie alle stile aussehen verwenden wir eine for
Schleife in der wir über alle Stile in der Liste plt.style.available
iterrieren.
for style in plt.style.available:
plt.figure(figsize=(6,4))
plt.style.use(style) # style aus Liste verwenden
plt.title(style) # style in Titel verwenden
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
plt.show() # darstellen des plots (sonst werden alle Figures weiterhin im Speicher geöffnet)
3.4.6. Gitter#
plt.grid()
für ein Gitter hinzu
plt.style.use('default')
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.grid()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
3.4.7. Linien, Punkte (Marker) & Farben#
Übersicht über alle Stile (matplotlib Cheat Sheet)
Marker (Datenpunkte)
in plt.plot()
Markertyp:
plt.plot(marker="s")
(Beispiele:.
,o
,s
,p
,x
,*
, … )Markergrößer:
plt.plot(ms=2)
(ms = markersize) ( default: 6 fürplt.style.use('default')
)
Linien
in plt.plot()
Liniendicke:
plt.plot(lw=2)
(lw = linewidth)Linienstil:
plt.plot(ls="--")
(ls = linestyle) (Beispiele:-
,:
,-
,-.
)
Farben + Deckkraft (Linien + Marker)
in plt.plot()
Farbe:
plt.plot(c="red")
(c = color)Deckkraft:
plt.plot(alpha=0.5")
(0.25 = 25% Deckkraft = 75% Durchsichtig)
plt.style.use('default')
plt.plot(Weg,Kraft_Probe1,label="Probe1",marker="s",ms=8,ls="--",lw=2,c="red");
plt.plot(Weg,Kraft_Probe2,label="Probe2",marker="o",ms=4,ls="-",lw=1,c="blue");
plt.legend()
plt.grid()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
3.4.8. Wertebereiche (x,y - Achse)#
mit plt.xlim()
und plt.ylim()
werden die Wertebereiche gesetzt:
Beispiele:
plt.xlim(0,20)
- Wertebereiche von 0 bis 20plt.xlim(10,)
- Wertebereiche von 10 bis Stamdardwertplt.xlim(,20)
- Wertebereiche von Stamdardwert bis 20
Wir stellen nun die x-Achse so ein, dass Sie nur von 0 bis 20 angezeigt wird:
plt.style.use('default')
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.grid()
plt.xlim(0,20)
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
Die y-Achse hat sich nicht geändert, dies müssen wir entsprechend mit plt.ylim()
vornehmen
plt.style.use('default')
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend()
plt.grid()
plt.xlim(0,20)
plt.ylim(0,25)
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");
3.4.9. Legende#
mit plt.legend()
wird die Legende angezeigt, wobei die Bezeichnung im jeweiligen über label
( plt.plot(label=””) ) realisiert wird
weitere Einstellungen für die Legende:
Position der Legende mit loc
: z.B. upper right
horizontal+vertikal:
lower
/center
/upper
+left
/center
/right
Zentrum:
center
automatisch:
best
Legende außerhalb mit bbox_to_anchor
=(x, y)
Legende horizontal mit ncol=2
(für zwei Einträge)
weiterführendes Material:
plt.style.use('default')
plt.plot(Weg,Kraft_Probe1,marker="s",label="Probe1");
plt.plot(Weg,Kraft_Probe2,marker="s",label="Probe2");
plt.legend(loc="lower center",bbox_to_anchor=(0.5, 1.0) ,ncol=2)
plt.grid()
plt.xlabel("Weg [mm]");
plt.ylabel("Kraft [N]");