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?

7voto

iacob Punkte 13293

Wenn Erstellen einer neuen Figur können Sie die Größe (in Zoll) mit der Option figsize Argument:

import matplotlib.pyplot as plt
fig = plt.figure(figsize=(w,h))

Wenn Sie möchten, dass eine bestehende Figur ändern verwenden Sie die set_size_inches() Methode:

fig.set_size_inches(w,h)

Wenn Sie möchten, dass die Standardeinstellung ändern Größe der Figur (6,4" x 4,8"), verwenden Sie "Befehle ausführen" rc :

plt.rc('figure', figsize=(w,h))

5voto

Udesh Ranjan Punkte 1368
import random
import math
import matplotlib.pyplot as plt
start=-20
end=20
x=[v for v in range(start,end)]
#sigmoid function
def sigmoid(x):
    return 1/(1+math.exp(x))
plt.figure(figsize=(8,5))#setting the figure size
plt.scatter([abs(v) for v in x],[sigmoid(v) for v in x])
plt.scatter(x,[sigmoid(sigmoid(v)) for v in x])

sigmoid image

4voto

Luguecos Punkte 91

Ich verwende immer das folgende Muster:

x_inches = 150*(1/25.4)     # [mm]*constant
y_inches = x_inches*(0.8)
dpi = 96

fig = plt.figure(1, figsize = (x_inches,y_inches), dpi = dpi, constrained_layout = True)

In diesem Beispiel können Sie die Abmessungen der Figur in Zoll oder Millimeter angeben. Bei der Einstellung constrained_layout zu True Plots füllen Ihre Figur ohne Grenzen aus.

3voto

nizarhamood Punkte 51

Hier ist ein Beispiel aus meinem eigenen Leben.

Nachfolgend habe ich Ihnen die Antwort gegeben, und ich habe sie erweitert, damit Sie damit experimentieren können.

Beachten Sie auch, dass die Werte für die Feigengröße gemessen werden in Zoll

import matplotlib.pyplot as plt

data = [2,5,8,10,15] # Random data, can use existing data frame column

fig, axs = plt.subplots(figsize = (20,6)) # This is your answer to resize the figure

# The below will help you expand on your question and resize individual elements within your figure. Experiement with the below parameters.
axs.set_title("Data", fontsize = 17.5)
axs.tick_params(axis = 'x', labelsize = 14)
axs.set_xlabel('X Label Here', size = 15)
axs.tick_params(axis = 'y', labelsize =14)
axs.set_ylabel('Y Label Here', size = 15)

plt.plot(data)

Ausgabe: enter image description here

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