본문 바로가기
Data Visualization/Seaborn

[Seaborn] 11. swarmpplot

by 베짱이28호 2024. 11. 15.

[Seaborn] 11. swarmpplot


1. stripplot 기본

sns.swarmplot(data=df)
  • 분포가 넘치면 위쪽에 limit가 걸린다


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)
    • swarm + violin


정리

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"
		},

'Data Visualization > Seaborn' 카테고리의 다른 글

[Seaborn] 13. pointplot  (0) 2024.11.16
[Seaborn] 12. lineplot  (0) 2024.11.15
[Seaborn] 10. stripplot  (0) 2024.11.15
[Seaborn] 9. countplot  (0) 2024.11.15
[Seaborn] 8. pairplot  (0) 2024.11.15
[Seaborn] 7. jointplot  (0) 2024.11.15
[Seaborn] 6. heatmap  (0) 2024.11.15

댓글