3235 Stimmen

Wie kann man die Größe der mit Matplotlib gezeichneten Figuren ändern?

Wie kann man die Größe einer mit Matplotlib gezeichneten Figur ändern?

15voto

wilywampa Punkte 1160

Dadurch wird die Größe der Abbildung sofort geändert, auch nachdem die Abbildung gezeichnet wurde (zumindest unter Qt4Agg/TkAgg - aber nicht unter Mac OS X - mit Matplotlib 1.4.0):

matplotlib.pyplot.get_current_fig_manager().resize(width_px, height_px)

14voto

Franck Dernoncourt Punkte 68647

Seit Matplotlib ist nicht in der Lage um das metrische System nativ zu verwenden, können Sie, wenn Sie die Größe Ihrer Figur in einer vernünftigen Längeneinheit wie z. B. Zentimetern angeben möchten, Folgendes tun (Code aus gns-ank ):

def cm2inch(*tupl):
    inch = 2.54
    if isinstance(tupl[0], tuple):
        return tuple(i/inch for i in tupl[0])
    else:
        return tuple(i/inch for i in tupl)

Dann können Sie verwenden:

plt.figure(figsize=cm2inch(21, 29.7))

14voto

circassia_ai Punkte 394

Verwenden Sie dies:

plt.figure(figsize=(width,height))

El width y height sind in Zoll. Wenn nichts angegeben wird, ist der Standardwert rcParams["figure.figsize"] = [6.4, 4.8] . Mehr sehen aquí .

9voto

Student222 Punkte 2871

Eine weitere Möglichkeit ist die Verwendung der Funktion rc() in Matplotlib (die Einheit ist inch):

import matplotlib
matplotlib.rc('figure', figsize=[10,5])

2 Stimmen

Dies ist sehr nützlich, da es die Größe global zuweist. Auf diese Weise müssen Sie sie nicht für jedes einzelne Diagramm festlegen. Es dürfte jedoch üblicher sein, Folgendes zu tun import matplotlib.pyplot as plt und tun dann plt.rc('figure', figsize=(10,5)) .

9voto

So habe ich meine benutzerdefinierte Grafik mit benutzerdefinierter Größe gedruckt

import matplotlib.pyplot as plt
from matplotlib.pyplot import figure

figure(figsize=(16, 8), dpi=80)
plt.plot(x_test, color = 'red', label = 'Predicted Price')
plt.plot(y_test, color = 'blue', label = 'Actual Price')
plt.title('Dollar to PKR Prediction')
plt.xlabel('Predicted Price')
plt.ylabel('Actual Dollar Price')
plt.legend()
plt.show()

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X