개요
Matplotlib.pyplot.subplots()는 다음의 강력한 함수입니다. Python 이를 통해 사용자는 단일 그림 내에서 하위 그림의 그리드를 만들 수 있습니다. 이 함수는 널리 사용되는 Matplotlib 라이브러리의 일부입니다. 데이터 시각화 파이썬에서. subplots()를 사용하면 사용자는 단일 그림에 여러 플롯을 쉽게 생성하여 다양한 데이터 세트나 변수를 더 쉽게 비교하고 분석할 수 있습니다.
차례
Matplotlib.pyplot.subplots() 사용의 이점
Matplotlib.pyplot.subplots()를 사용하면 데이터 시각화 작업에 여러 가지 이점이 있습니다. 첫째, 단일 그림에 여러 플롯을 구성하고 표시하는 편리한 방법을 제공합니다. 이는 데이터 세트의 다양한 측면을 비교하거나 다양한 시각화를 제시할 때 특히 유용할 수 있습니다.
또한 subplots()를 사용하면 사용자가 하위 플롯의 레이아웃과 배열을 사용자 정의할 수 있습니다. 사용자는 서브플롯 그리드의 행 및 열 수와 각 서브플롯 사이의 크기 및 간격을 지정할 수 있습니다. 이러한 유연성을 통해 사용자는 시각적으로 매력적이고 유익한 플롯을 만들 수 있습니다.
또한 읽기 : 초보자를 위한 Python을 사용한 Matplotlib 소개
서브플롯 그리드 이해
서브플롯 그리드는 Matplotlib.pyplot.subplots()를 사용하여 생성된 그림 내의 서브플롯 배열입니다. 행과 열로 구성되어 있으며, 서브플롯을 나타내는 각 셀. 사용자는 사용자가 행과 열의 수를 선택할 수 있도록 지정할 수 있습니다. 원하는 레이아웃에
서브플롯은 행렬의 요소에 액세스하는 것과 유사한 인덱싱을 사용하여 액세스됩니다. 예를 들어, 첫 번째 행과 두 번째 열의 서브플롯에 액세스하려면 인덱싱은 [0, 1]이 됩니다. 이를 통해 사용자는 그리드 내의 개별 하위 플롯을 신속하게 수정하고 사용자 정의할 수 있습니다.
서브플롯 그리드는 Figure 객체와 Axes 객체 배열을 반환하는 subplots() 함수를 사용하여 생성할 수 있습니다. Figure 객체는 전체 그림을 나타내고, Axes 객체는 각 서브플롯을 나타냅니다. 이러한 Axes 객체는 제목, 레이블, 데이터 등 각 하위 플롯의 속성을 수정하는 데 사용할 수 있습니다.
기본 서브플롯 그리드 생성
이 섹션에서는 Python에서 `matplotlib.pyplot.subplots()` 함수를 사용하여 기본 하위 플롯 그리드를 만드는 방법을 살펴봅니다. 이 기능을 사용하면 단일 그림 내에서 하위 플롯의 그리드를 생성하여 여러 플롯을 동시에 시각화하는 것이 더 쉬워집니다..
구문 및 매개변수
서브플롯 그리드를 생성하는 구문은 다음과 같습니다.
암호:
fig, axes = plt.subplots(nrows, ncols)
여기서 `nrows`와 `ncols`는 서브플롯 그리드의 행과 열 수를 나타냅니다.. 이 함수는 두 개의 개체를 반환합니다. fig,
이는 전체 그림을 의미하며 axes,
이는 각 서브플롯을 나타내는 좌표축 객체의 배열입니다.
예: 2×2 서브플롯 그리드 생성
2×2 서브플롯 그리드를 생성하는 방법을 이해하기 위해 예를 살펴보겠습니다. 먼저, 필요한 라이브러리를 가져와야 합니다.
암호:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 2*np.pi, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
y4 = np.exp(x)
fig, axes = plt.subplots(2, 2)
axes[0, 0].plot(x, y1)
axes[0, 0].set_title('Sin(x)')
axes[0, 1].plot(x, y2)
axes[0, 1].set_title('Cos(x)')
axes[1, 0].plot(x, y3)
axes[1, 0].set_title('Tan(x)')
axes[1, 1].plot(x, y4)
axes[1, 1].set_title('Exp(x)')
plt.tight_layout()
plt.show()
출력:
이 예에서는 `subplots()` 함수를 사용하여 2×2 하위 플롯 그리드를 만듭니다. 그런 다음 `axes` 배열의 인덱싱을 사용하여 각 서브플롯에 액세스하고 이에 따라 데이터를 플로팅합니다. 마지막으로 `tight_layout()`을 사용하여 서브플롯 사이의 간격을 조정하고 `show()`를 사용하여 그림을 표시합니다.
`matplotlib.pyplot.subplots()` 함수를 사용하면 Python에서 서브플롯 그리드를 쉽게 만들고 사용자 정의할 수 있습니다. 이를 통해 단일 그림으로 여러 플롯을 시각화할 수 있으므로 데이터 분석 및 프리젠테이션이 편리해집니다.
서브플롯 간격 조정
Matplotlib의 `subplots()` 함수를 사용하여 하위 플롯을 생성할 때 이들 사이의 간격을 조정할 수 있습니다. 이는 플롯의 레이아웃을 사용자 정의하거나 여러 하위 플롯이 있고 그 사이의 간격을 최적화하려는 경우 유용할 수 있습니다.
`wspace` 및 `hspace` 매개변수 사용:
서브플롯 사이의 간격을 조정하려면 `subplots()` 함수의 `wspace` 및 `hspace` 매개변수를 사용하세요. 이러한 매개변수는 각각 서브플롯 간의 너비와 높이 간격을 제어합니다.
'wspace' 매개변수는 서브플롯 사이의 가로 간격을 제어하고 'hspace' 매개변수는 세로 간격을 제어합니다. 이러한 매개변수를 조정하면 서브플롯 사이에 더 많거나 더 적은 공간을 만들 수 있습니다.
예를 들어, `wspace` 및 `hspace` 매개변수를 더 높은 값으로 설정하여 서브플롯 사이의 간격을 늘릴 수 있습니다. 반면에 간격을 줄이려면 이러한 매개변수를 더 낮은 값으로 설정할 수 있습니다.
예: 서브플롯 간격 조정
서브플롯 간격을 조정하는 방법을 보여주는 예를 살펴보겠습니다. 두 개의 하위 플롯이 수직으로 배열된 그림이 있다고 가정합니다. 우리는 이러한 서브플롯 사이의 간격을 늘리고 싶습니다.
이를 달성하기 위해 `wspace` 매개변수를 0.2로 설정하고 `hspace` 매개변수를 0.5로 설정할 수 있습니다. 이렇게 하면 서브플롯 사이에 수평 및 수직으로 더 많은 공간이 생성됩니다.
암호:
import matplotlib.pyplot as plt
fig, axs = plt.subplots(2, 1, figsize=(6, 6))
fig.subplots_adjust(wspace=1, hspace=5)
# Plotting code for the subplots
plt.show()
출력:
위의 예에서는 먼저 `subplots()` 함수를 사용하여 두 개의 하위 플롯이 있는 그림을 만듭니다. 그런 다음 `subplots_adjust()` 함수를 사용하여 `wspace` 및 `hspace` 매개변수를 설정하여 하위 플롯 사이의 간격을 조정합니다.
서브플롯 간격을 사용자 정의하여 원하는 레이아웃과 서브플롯 사이의 간격으로 시각적으로 매력적인 플롯을 생성할 수 있습니다.
서브플롯 제목 및 축 레이블 설정
이 섹션에서는 플롯의 시각적 표현을 향상시키기 위해 서브플롯 및 축 레이블에 제목을 추가하는 방법을 살펴보겠습니다.
서브플롯에 제목 추가
We `set_title()` 함수를 사용하여 하위 플롯에 제목을 추가할 수 있습니다. 이 기능을 사용하면 각 하위 플롯의 제목을 지정할 수 있습니다. 설명적인 제목을 지정하여 플롯에 맥락과 명확성을 제공할 수 있습니다..
예를 들어, 두 변수의 분포를 나타내는 두 개의 하위 그림이 있는 그림이 있다고 가정해 보겠습니다. 다음 코드를 사용하여 이러한 하위 플롯에 제목을 추가할 수 있습니다.
암호:
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.set_title("Distribution of Variable A")
ax2.set_title("Distribution of Variable B")
`set_title()` 함수를 사용하면 서브플롯의 제목을 쉽게 사용자 정의하여 표시하려는 정보를 전달할 수 있습니다.
서브플롯에 축 레이블 추가
축 레이블은 플롯의 x 및 y축에 표시된 변수에 대한 정보를 제공하는 데 필수적입니다. 서브플롯에 축 레이블을 추가하려면 `set_xlabel()` 및 `set_ylabel()` 함수를 사용할 수 있습니다.
예를 들어, 두 변수 사이의 관계를 나타내는 두 개의 하위 도표가 있는 그림을 생각해 보세요. 다음 코드를 사용하여 이러한 하위 그림에 축 레이블을 추가할 수 있습니다.
암호:
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.set_xlabel("Variable A")
ax1.set_ylabel("Variable B")
ax2.set_xlabel("Variable C")
ax2.set_ylabel("Variable D")
`set_xlabel()` 및 `set_ylabel()` 함수를 사용하면 각 서브플롯의 x 및 y축에 대한 명확한 레이블을 제공할 수 있으므로 뷰어가 데이터를 더 쉽게 해석할 수 있습니다.
예: 서브플롯 제목 및 축 레이블 설정
서브플롯 제목과 축 레이블을 설정하는 프로세스를 설명하기 위해 데이터세트의 다양한 측면을 나타내는 세 개의 서브플롯이 있는 그림이 있는 예를 고려해 보겠습니다.
암호:
import matplotlib.pyplot as plt
import numpy as np
# Generating sample data
x = np.arange(1, 6)
y1 = np.random.randint(1, 10, size=5)
y2 = np.random.randint(1, 10, size=5)
y3 = np.random.randint(1, 10, size=5)
fig, (ax1, ax2, ax3) = plt.subplots(1, 3)
ax1.plot(x, y1)
ax1.set_title("Plot 1")
ax1.set_xlabel("X-axis")
ax1.set_ylabel("Y-axis")
ax2.scatter(x, y2)
ax2.set_title("Plot 2")
ax2.set_xlabel("X-axis")
ax2.set_ylabel("Y-axis")
ax3.bar(x, y3)
ax3.set_title("Plot 3")
ax3.set_xlabel("X-axis")
ax3.set_ylabel("Y-axis")
# Plotting code for the subplots
plt.show()
출력:
이 예에서는 각각 다른 유형의 플롯을 나타내는 세 개의 하위 플롯이 있는 그림을 만듭니다. set_title()을 사용하여 각 서브플롯의 제목을 설정하고 set_xlabel() 및 set_ylabel()을 사용하여 축 레이블을 제공합니다. 이를 통해 각 하위 플롯에 명확하게 레이블을 지정하고 설명할 수 있어 시청자가 제시된 데이터를 더 쉽게 이해할 수 있습니다..
이러한 단계를 수행하면 하위 플롯 제목과 축 레이블을 효과적으로 설정하여 플롯의 시각적 표현을 향상시킬 수 있습니다.
서브플롯 크기 및 종횡비 제어
Matplotlib의 `subplots()` 함수를 사용하여 하위 플롯을 생성할 때 다음을 볼 수 있습니다. 서브플롯의 종횡비. 이를 통해 귀하의 필요에 가장 잘 맞게 플롯의 레이아웃을 사용자 정의할 수 있습니다..
figsize 매개변수에 적합
서브플롯의 크기를 제어하는 한 가지 방법은 'figsize' 매개변수를 사용하는 것입니다. 이 매개변수는 그림의 너비와 높이를 인치 단위로 나타내는 두 값의 튜플을 사용합니다. 이러한 값을 조정하여 서브플롯의 전체 크기를 변경할 수 있습니다.
예를 들어, 너비가 8인치, 높이가 6인치인 서브플롯이 있는 그림을 생성하려면 'figsize' 매개변수를 '(8, 6)'으로 설정할 수 있습니다.
import matplotlib.pyplot as plt
fig, axs = plt.subplots(2, 2, figsize=(8, 6))
그러면 2개의 행과 8개의 열로 구성된 그리드가 있는 그림이 생성되며, 각 서브플롯의 크기는 6인치 x XNUMX인치입니다.
예: 서브플롯 크기 및 종횡비 제어
서브플롯 크기와 종횡비를 제어하는 방법을 더 자세히 설명하는 예를 살펴보겠습니다. 첫 번째 서브플롯이 두 번째 서브플롯 너비의 두 배인 두 개의 서브플롯이 있는 그림을 생성한다고 가정합니다.
암호:
import matplotlib.pyplot as plt
fig, axs = plt.subplots(1, 2, figsize=(10, 5))
axs[0].plot([1, 2, 3, 4], [1, 4, 9, 16])
axs[0].set_title('Subplot 1')
axs[1].plot([1, 2, 3, 4], [1, 8, 27, 64])
axs[1].set_title('Subplot 2')
plt.show()
출력:
이 예에서는 행 1개와 열 2개의 그리드가 있는 그림을 만듭니다. `figsize` 매개변수를 `(10, 5)`로 설정했습니다. 이는 그림의 너비가 10인치, 높이가 5인치라는 의미입니다.
첫 번째 서브플롯은 x축에 '[1, 2, 3, 4]' 데이터를 사용하고 y축에 '[1, 4, 9, 16]' 데이터를 사용하여 그려집니다. 두 번째 서브플롯은 x축에 '[1, 2, 3, 4]' 데이터를 사용하고 y축에 '[1, 8, 27, 64]' 데이터를 사용하여 그려집니다.
조절하는 `figsize` 매개변수를 사용하면 하위 플롯의 전체 크기를 제어할 수 있습니다. 귀하의 필요에 가장 적합한 사용자 정의 레이아웃을 만들 수 있습니다.
결론
Python의 Matplotlib.pyplot.subplots()에 관한 이 기사에서는 Matplotlib에서 하위 플롯의 크기와 종횡비를 제어하는 방법을 배웠습니다. 사용 `figsize` 매개변수를 사용하면 서브플롯의 전체 크기를 조정할 수 있습니다. 이를 통해 우리의 요구 사항에 가장 적합한 사용자 정의 레이아웃을 만들 수 있습니다. 플롯의 원하는 하위 플롯 크기와 종횡비를 얻기 위해 `figsize` 매개변수에 대해 다양한 값을 실험해 보세요..
- SEO 기반 콘텐츠 및 PR 배포. 오늘 증폭하십시오.
- PlatoData.Network 수직 생성 Ai. 자신에게 권한을 부여하십시오. 여기에서 액세스하십시오.
- PlatoAiStream. 웹3 인텔리전스. 지식 증폭. 여기에서 액세스하십시오.
- 플라톤ESG. 탄소, 클린테크, 에너지, 환경, 태양광, 폐기물 관리. 여기에서 액세스하십시오.
- PlatoHealth. 생명 공학 및 임상 시험 인텔리전스. 여기에서 액세스하십시오.
- 출처: https://www.analyticsvidhya.com/blog/2024/02/matplotlib-pyplot-subplots-in-python/