Как вы меняете размер фигур, нарисованных с помощью matplotlib? - PullRequest
1496 голосов
/ 02 декабря 2008

Как изменить размер фигуры, нарисованной с помощью matplotlib?

Ответы [ 14 ]

9 голосов
/ 28 мая 2014

Это хорошо работает для меня:

from matplotlib import pyplot as plt
F = gcf()
Size = F.get_size_inches()
F.set_size_inches(Size[0]*2, Size[1]*2, forward=True)#Set forward to True to resize window along with plot in figure.
plt.show() #or plt.imshow(z_array) if using an animation, where z_array is a matrix or numpy array

Это также может помочь: http://matplotlib.1069221.n5.nabble.com/Resizing-figure-windows-td11424.html

8 голосов
/ 03 августа 2016

Поскольку Matplotlib не может использовать метрическую систему изначально, если вы хотите указать размер вашей фигуры в разумных единицах длины, таких как сантиметры, вы можете сделать следующее (код из GNS-апк ):

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)

Тогда вы можете использовать:

plt.figure(figsize=cm2inch(21, 29.7))
7 голосов
/ 28 октября 2014

Это изменяет размер фигуры сразу же после того, как фигура была нарисована (по крайней мере, используя Qt4Agg / TkAgg - но не MacOSX - с matplotlib 1.4.0):

matplotlib.pyplot.get_current_fig_manager().resize(width_px, height_px)
3 голосов
/ 28 мая 2019

Другой вариант, использовать функцию rc () в matplotlib (единица измерения - дюймы)

import matplotlib
matplotlib.rc('figure', figsize=[10,5])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...