Matplotlib — мощная библиотека Python для создания визуализаций. Хотя построение графиков просто, управление их размером имеет решающее значение для читаемости и представления. В этой статье рассматриваются различные методы регулировки размеров графиков Matplotlib.
Содержание
- Установка
figsize
вfigure()
- Изменение
rcParams
для глобальных изменений - Использование
set_figheight()
иset_figwidth()
- Использование
set_size_inches()
- Форматы фигур и
savefig()
1. Установка figsize
в figure()
Простейший метод — указание аргумента figsize
в matplotlib.pyplot.figure()
. figsize
принимает кортеж (ширина, высота) в дюймах.
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
fig = plt.figure(figsize=(10, 6)) # Ширина 10 дюймов, высота 6 дюймов
ax = fig.add_subplot(111)
ax.plot(x, y)
plt.show()
2. Изменение rcParams
для глобальных изменений
Чтобы изменить размер фигуры по умолчанию для всех графиков, измените словарь rcParams
. Это устанавливает размер по умолчанию, если он не переопределен.
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
mpl.rcParams['figure.figsize'] = (8, 4) # По умолчанию: 8x4 дюйма
x = np.linspace(0, 10, 100)
y = np.cos(x)
plt.plot(x, y)
plt.show()
3. Использование set_figheight()
и set_figwidth()
Отрегулируйте размер после создания фигуры, используя методы set_figheight()
и set_figwidth()
объекта фигуры.
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.exp(-x)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y)
fig.set_figheight(5) # Высота 5 дюймов
fig.set_figwidth(12) # Ширина 12 дюймов
plt.show()
4. Использование set_size_inches()
set_size_inches()
предлагает краткий способ изменения размеров, принимая кортеж (ширина, высота).
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = x**2
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y)
fig.set_size_inches(7, 3) # 7x3 дюйма
plt.show()
5. Форматы фигур и savefig()
Формат фигуры (PNG, PDF, SVG) влияет на размер сохраненного вывода. Форматы с более высоким разрешением (SVG) масштабируемы. Используйте savefig()
для управления форматом и разрешением (dpi
).
import matplotlib.pyplot as plt
import numpy as np
# ... (Ваш код построения графика) ...
plt.savefig("myplot.png", dpi=300) # PNG высокого разрешения
plt.savefig("myplot.pdf") # Векторный формат
plt.savefig("myplot.svg") # Векторный формат
Эти методы обеспечивают гибкость в управлении размерами графиков Matplotlib для создания четких и визуально привлекательных визуализаций.