[Seaborn] 11. swarmpplot
1. stripplot 기본
sns.swarmplot(data=df)
2. 컬럼 입력
sns.swarmplot(data=df, x='반', y='국어')
- 컬럼 입력하면 범주형 구분해서 y값 분포를 보여준다.
3. 그룹화
sns.swarmplot(
# 기본 데이터 설정: 데이터프레임 / X축 / Y축 / 색상구분
data=df, x='반', y='국어', hue='성별',
# 스타일 설정: 점크기 / 투명도 / 팔레트
size=4, alpha=0.6, palette='muted'
)
4. swarm + violin
# Violin Plot + Swarm Plot 결합
# 1. 바이올린플롯 기본
sns.violinplot(
# 기본 데이터 설정: 데이터프레임 / X축 / Y축
data=df, x='반', y='국어',
# 스타일 설정: 채도 / 색상
saturation=0.7, color='lightgray',
# 바이올린 설정: 너비 / 내부 박스표시 / 투명도
width=0.7, inner=None, alpha=0.5,
# 커널밀도 설정: 부드러움
bw_adjust=0.3
)
# 2. 스웜플롯 추가
sns.swarmplot(
# 기본 데이터 설정: 데이터프레임 / X축 / Y축 / 색상구분
data=df, x='반', y='국어', hue='성별',
# 스타일 설정: 점크기 축소 / 투명도 / 팔레트
size=3, alpha=0.6, palette='muted'
)
plt.title('반별 국어 점수 분포', pad=15)
정리
sns.swarmplot(
# 기본 데이터 설정: 데이터프레임 / X축 / Y축 / 색상구분
data=df, x='col1', y='col2', hue='col3',
# 스타일 설정: 점크기 축소 / 투명도 / 팔레트
size=3, alpha=0.6, palette='muted'
)
"Seaborn Swarmplot Template": {
"prefix": "sns_swarm",
"body": [
"sns.swarmplot(",
" # 기본 데이터 설정: 데이터프레임 / X축 / Y축 / 색상구분",
" data=${1:df}, x='${2:col1}', y='${3:col2}', hue='${4:col3}',",
"",
" # 스타일 설정: 점크기 / 투명도 / 팔레트",
" size=${5:3}, alpha=${6:0.6}, palette='${7:muted}'",
")"
],
"description": "Create a Seaborn swarm plot with common parameters"
},
댓글