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()
Figur Größeneinheiten

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 cmsieht 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()
Figur Größeneinheiten

Abbildungsgröße in Pixel #

Ebenso kann man eine Umwandlung von Pixeln verwenden.

Beachten Sie, dass Sie dies unterbrechen könnten, wenn Sie savefigeinen 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()
Figur Größeneinheiten

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()
Figur Größeneinheiten

Verweise

In diesem Beispiel wird die Verwendung der folgenden Funktionen, Methoden, Klassen und Module gezeigt:

Galerie generiert von Sphinx-Gallery