Seaborn에서 x축 눈금 밀도 줄이기
Seaborn 그래프에서 x축 눈금(x-tick)이 너무 촘촘하게 표시되어 가독성이 떨어질 때가 있습니다. 이럴 때는 홀수 위치에 있는 눈금 레이블에 set_visible(False)을 적용하여 눈금의 밀도를 절반으로 줄일 수 있습니다.
구현 단계
그림(figure) 크기를 설정하고, 서브플롯 사이와 주변의 여백(padding)을 조정합니다.
X축과 Y축 키를 가지는 데이터프레임을 생성합니다.
barplot() 메서드를 사용하여 막대 형태로 점 추정치와 신뢰 구간을 시각화합니다.
bar_plot.get_xticklabels() 메서드를 반복(iterate)하면서 인덱스가 짝수인 경우에는 눈금 레이블을 보이게(set_visible(True)) 하고, 홀수인 경우에는 숨깁니다(set_visible(False)).
show() 메서드를 호출하여 최종 그림을 화면에 표시합니다.
예제 코드
import pandas
import matplotlib.pylab as plt
import seaborn as sns
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
df = pandas.DataFrame({"X-Axis": [i for i in range(10)], "Y-Axis": [i for i in range(10)]})
bar_plot = sns.barplot(x='X-Axis', y='Y-Axis', data=df)
for index, label in enumerate(bar_plot.get_xticklabels()):
if index % 2 == 0:
label.set_visible(True)
else:
label.set_visible(False)
plt.show()실행 결과

추가 팁
위 방법은 기존 눈금을 일부만 숨기는 방식입니다. 만약 눈금 개수 자체를 유연하게 조절하고 싶다면 matplotlib.ticker 모듈의 MaxNLocator를 사용하거나, set_xticks() 메서드로 원하는 위치의 눈금만 직접 지정하는 방법도 활용할 수 있습니다. 데이터 포인트가 많은 그래프일수록 이러한 눈금 간격 조절이 시각화 결과의 가독성을 크게 향상시킵니다.