>백엔드 개발 >파이썬 튜토리얼 >유연하게 구성 가능한 크기로 Matplotlib 하위 플롯을 어떻게 생성할 수 있습니까?

유연하게 구성 가능한 크기로 Matplotlib 하위 플롯을 어떻게 생성할 수 있습니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-15 06:55:12800검색

How Can I Create Matplotlib Subplots with Flexibly Configurable Sizes?

Matplotlib에서 하위 플롯 크기를 유연하게 구성

다양한 크기의 하위 플롯을 생성하는 것은 데이터를 시각화할 때 일반적인 요구 사항입니다. Matplotlib는 GridSpec을 사용하거나 그림 자체를 구성하는 두 가지 접근 방식을 제공하여 하위 플롯 크기를 조정합니다.

하위 플롯 크기 조정을 위해 Matplotlib의 그림 사용

제공된 예에서 작업은 첫 번째 서브플롯이 두 번째 서브플롯보다 3배 넓은 두 개의 서브플롯을 만드는 것입니다. Figure의 생성자를 사용하면 figsize 인수를 사용하여 첫 번째 플롯의 크기를 조정할 수 있습니다. 그러나 두 번째 플롯의 크기는 이 방법으로 직접 제어할 수 없습니다.

키워드 인수를 사용한 솔루션(Matplotlib >= 3.6.0)

Matplotlib 버전 기준 3.6.0에서는 키워드 인수를 plt.subplots 및 subplot_mosaic에 직접 전달하여 서브플롯의 width_ratios 또는 height_ratios. 이렇게 하면 이 특정 작업에 GridSpec이 필요하지 않습니다.

import matplotlib.pyplot as plt

# Create subplots with custom width ratios
f, (a0, a1) = plt.subplots(1, 2, width_ratios=[3, 1])

# Plot on subplots
a0.plot(x, y)
a1.plot(y, x)

# Save to PDF
f.savefig('custom_width_subplots.pdf')

Gridspec_kw와 함께 하위 플롯 사용

이전 버전의 Matplotlib 또는 Matplotlib에 대한 보다 세부적인 제어가 필요한 경우 서브플롯 레이아웃의 경우, Gridspec_kw 인수가 있는 서브플롯 기능을 사용할 수 있습니다. 이 접근 방식에는 Gridspec_kw 사전의 width_ratios 또는 height_ratios로 지정된 그림 및 개별 하위 플롯을 생성하는 작업이 포함됩니다.

import numpy as np
import matplotlib.pyplot as plt

# Generate data
x = np.arange(0, 10, 0.2)
y = np.sin(x)

# Create subplots with custom width ratios
f, (a0, a1) = plt.subplots(1, 2, gridspec_kw={'width_ratios': [3, 1]})

# Plot on subplots
a0.plot(x, y)
a1.plot(y, x)

# Tighten layout and save to PDF
f.tight_layout()
f.savefig('grid_figure.pdf')

위 내용은 유연하게 구성 가능한 크기로 Matplotlib 하위 플롯을 어떻게 생성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.