Wie kann man die Größe einer mit Matplotlib gezeichneten Figur ändern?
Antworten
Zu viele Anzeigen?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))
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])
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.
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)
- See previous answers
- Weitere Antworten anzeigen