plt.figure (figsize = (10,20)) не работает - PullRequest
0 голосов
/ 29 июня 2019

Я использую matplotlib.pyplot для построения гистограммы, и я хочу увеличить размер графика. Код для построения:

plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.figure(figsize=(6,4))
plt.show()

Но plt.figure (..) не влияет на размер графика. Я использую Spyder IDE.

Ответы [ 3 ]

2 голосов
/ 29 июня 2019

Вы хотите определить пространство фигуры до создания информации о графике.

plt.figure(figsize=(6,4))
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.show()

Это определит вашу фигуру, а затем отобразит информацию в этом пространстве, в противном случае Matplotlib будет использовать значения по умолчанию.

2 голосов
/ 29 июня 2019

Просто поместите это сверху:

plt.figure(figsize=(10,20))
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.show()
0 голосов
/ 29 июня 2019

В matplotlib нам нужно сначала создать фигуру, если мы планируем использовать любую функцию pyplot с размерами фигуры не по умолчанию.

plt.figure(figsize=(6,4)) ## New figure
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.show()

Из документов , «Каждая функция pyplot вносит некоторые изменения в фигуру», и по умолчанию создается фигура для помещения всех изменений pyplot.

Используйте функцию gca () для возврата текущих осей (экземпляр matplotlib.axes.Axes) и gcf () для возврата текущего рисунка (экземпляр matplotlib.figure.Figure)

Debug:

print(plt.gcf()) # Figure(432x288) default
plt.figure(figsize=(10,20)) # --> (1)
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
print(plt.gcf()) # Figure(720x1440) from (1)
plt.figure(figsize=(20,20)) # --> (2)
print(plt.gcf()) # Figure(1440x1440) from (2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...