Notiz
Klicken Sie hier , um den vollständigen Beispielcode herunterzuladen
Abbildungsgröße in verschiedenen Einheiten #
Die native Maßeinheit für Figurengrößen in Matplotlib ist Zoll, abgeleitet von den Standards der Druckindustrie. Benutzer müssen ihre Zahlen jedoch möglicherweise in anderen Einheiten wie Zentimetern oder Pixeln angeben. Dieses Beispiel veranschaulicht, wie dies effizient durchgeführt werden kann.
import matplotlib.pyplot as plt
text_kwargs = dict(ha='center', va='center', fontsize=28, color='C1')
Abbildungsgröße in Zoll (Standard) #
plt.subplots(figsize=(6, 2))
plt.text(0.5, 0.5, '6 inches x 2 inches', **text_kwargs)
plt.show()
Figurgröße in Zentimeter #
Die Multiplikation von zentimeterbasierten Zahlen mit einem Umrechnungsfaktor von cm in Zoll ergibt die richtigen Zahlen. Durch die Benennung des Umrechnungsfaktors cm
sieht die Umrechnung fast so aus, als würde man eine Einheit an die Zahl anhängen, was schön lesbar ist.
cm = 1/2.54 # centimeters in inches
plt.subplots(figsize=(15*cm, 5*cm))
plt.text(0.5, 0.5, '15cm x 5cm', **text_kwargs)
plt.show()
Abbildungsgröße in Pixel #
Ebenso kann man eine Umwandlung von Pixeln verwenden.
Beachten Sie, dass Sie dies unterbrechen könnten, wenn Sie savefig
einen anderen expliziten dpi-Wert verwenden.
px = 1/plt.rcParams['figure.dpi'] # pixel in inches
plt.subplots(figsize=(600*px, 200*px))
plt.text(0.5, 0.5, '600px x 200px', **text_kwargs)
plt.show()
Schnelle interaktive Arbeit wird normalerweise auf den Bildschirm gerendert, wodurch Pixel eine gute Einheitsgröße haben. Aber das Definieren des Umrechnungsfaktors kann sich für schnelle Iterationen etwas mühsam anfühlen.
Aufgrund der Vorgabe kann man den benötigten Pixelwert gedanklich durch 100 [ 1 ] teilen :rcParams['figure.dpi'] = 100
plt.subplots(figsize=(6, 2))
plt.text(0.5, 0.5, '600px x 200px', **text_kwargs)
plt.show()
Verweise
In diesem Beispiel wird die Verwendung der folgenden Funktionen, Methoden, Klassen und Module gezeigt: