666 Stimmen

Wie ändere ich die Größe der Zahlen bei Teilplots?

Wie erhöhe ich die Größe der Figur für diese Zahl ? Das bringt nichts:

fig.figsize(15, 15)

1198voto

Rutger Kassies Punkte 60210

Verwenden Sie dies für ein Figurenobjekt:

fig.set_figheight(15)
fig.set_figwidth(15)

Alternativ kann bei der Verwendung von .subplots() um eine neue Figur zu erstellen, geben Sie figsize= :

fig, axs = plt.subplots(2, 2, figsize=(15, 15))

97voto

Aroc Punkte 693

Zusätzlich zu den vorangegangenen Antworten gibt es hier die Möglichkeit, die Größe der Abbildung und die Größe der Teilflächen innerhalb der Abbildung individuell einzustellen, und zwar mit gridspec_kw :

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

#generate random data
x,y=range(100), range(10)
z=np.random.random((len(x),len(y)))
Y=[z[i].sum() for i in range(len(x))]
z=pd.DataFrame(z).unstack().reset_index()

#Plot data
fig, axs = plt.subplots(2,1,figsize=(16,9), gridspec_kw={'height_ratios': [1, 2]})
axs[0].plot(Y)
axs[1].scatter(z['level_1'], z['level_0'],c=z[0])

mit dieser Zahl als Ergebnis: enter image description here

68voto

aquirdturtle Punkte 1777

Alternativ dazu können Sie eine figure() Objekt unter Verwendung der figsize und verwenden Sie dann add_subplot um Ihre Nebenhandlungen hinzuzufügen. z.B.

import matplotlib.pyplot as plt
import numpy as np

f = plt.figure(figsize=(10,3))
ax = f.add_subplot(121)
ax2 = f.add_subplot(122)
x = np.linspace(0,4,1000)
ax.plot(x, np.sin(x))
ax2.plot(x, np.cos(x), 'r:')

Simple Example

Die Vorteile dieser Methode sind, dass die Syntax näher an Aufrufen von subplot() anstelle von subplots() . Z.B. scheint subplots nicht die Verwendung einer GridSpec zur Kontrolle der Abstände zwischen den Teilflächen, aber beide subplot() y add_subplot() tun.

10voto

Arjun Bhaybhang Punkte 91

Sie können verwenden plt.figure(figsize = (16,8)) zum Ändern der Zahlengröße eines einzelnen Plots und mit bis zu zwei Unterplots. (Argumente innerhalb von figsize ermöglichen die Änderung der Abbildungsgröße)

Um die Zahlengröße mehrerer Teilflächen zu ändern, können Sie Folgendes verwenden plt.subplots(2,2,figsize=(10,10)) bei der Erstellung von Teilplots.

6voto

YScharf Punkte 689

Zum Plotten subplots in einem for loop was manchmal nützlich ist: Beispielcode für eine matplotlib Darstellung mehrerer Unterdiagramme von Histogrammen aus einer multivariate numpy array (zweidimensional).

plt.figure(figsize=(16, 8)) 
for i in range(1, 7):
    plt.subplot(2, 3, i)
    plt.title('Histogram of {}'.format(str(i)))
    plt.hist(x[:,i-1], bins=60)

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