Seaborn의 pairplot()으로 생성한 다이어그램에 전체 제목을 표시하려면 pp.fig.suptitle() 메서드를 활용하면 됩니다. pairplot은 여러 개의 서브플롯으로 구성되어 있기 때문에, 개별 축이 아닌 전체 figure에 제목을 지정해야 한다는 점이 핵심입니다.
구현 단계
- 그림 크기를 설정하고 서브플롯 간의 여백을 조정합니다.
- Pandas 데이터프레임을 생성합니다. 데이터프레임은 2차원이면서 크기가 가변적이고, 이질적인 데이터를 담을 수 있는 표 형태의 자료구조입니다.
- 데이터셋에서 변수 간 쌍별(pairwise) 관계를 시각화합니다.
- suptitle() 메서드로 figure 중앙 상단에 제목을 추가합니다.
- show() 메서드를 호출하여 그래프를 화면에 출력합니다.
예제 코드
import seaborn as sns
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
df = pd.DataFrame(np.random.random((5, 5)),
columns=["a", "b", "c", "d", "e"])
pp = sns.pairplot(df, height=3.5)
pp.fig.suptitle("My Pairplot")
plt.show()코드 설명
위 예제에서는 먼저 NumPy를 사용해 5×5 크기의 난수 배열을 만들고, 이를 'a'부터 'e'까지의 열 이름을 가진 Pandas 데이터프레임으로 변환합니다. 이후 sns.pairplot(df, height=3.5)를 호출하면 각 변수 쌍의 관계가 산점도 행렬 형태로 렌더링됩니다.
마지막으로 pp.fig.suptitle("My Pairplot")을 호출하면 전체 figure의 중앙 상단에 "My Pairplot"이라는 제목이 표시됩니다. 만약 제목 위치를 세부적으로 조정하고 싶다면 y 파라미터를 활용할 수 있습니다. 예를 들어 pp.fig.suptitle("My Pairplot", y=1.02)처럼 작성하면 제목이 그래프 위쪽으로 살짝 이동하여 서브플롯과 겹치지 않게 됩니다.
실행 결과

실행하면 5개 변수(a~e) 간의 쌍별 산점도와 대각선상의 분포 플롯이 함께 그려지며, 그림 최상단 중앙에 지정한 제목이 나타나는 것을 확인할 수 있습니다.