본문 바로가기
판다스 강의(유튜브)/python in excel

[Python in Excel] 엑셀에서 파이썬의 seaborn을 이용해 산포도 그리기

by 김판다t 2023. 11. 13.

 

 

 

강의에서 그릴 그래프

 

 

 

 

학생의 키와 몸무게를 각각 x축과 y축으로 설정해 산포도(scatter plot)을 그리되 남녀에 따라 컬러를 구분하고, 학생들의 나이에 따라 입자의 크기를 다르게 그래프를 그려라.

 

 

 

파일

 

 

여러분도 아래의 파일을 다운받아서 실습할 수 있습니다

 

학생_키_몸무게(relplot).xlsx
0.02MB

 

 

 

 

 

강의와 관련된 링크

 

 

seaborn의 갤러리를 활용해 그래프를 그렸습니다

 

갤러리 링크 :  https://seaborn.pydata.org/examples/scatter_bubbles.html

 

Scatterplot with varying point sizes and hues — seaborn 0.13.0 documentation

Scatterplot with varying point sizes and hues seaborn components used: set_theme(), load_dataset(), relplot() import seaborn as sns sns.set_theme(style="white") # Load the example mpg dataset mpg = sns.load_dataset("mpg") # Plot miles per gallon against ho

seaborn.pydata.org

 

 

seaborn 다양한 테마 링크 : https://python-charts.com/seaborn/themes/

 

다양한 palette(색깔) 링크 : https://seaborn.pydata.org/tutorial/color_palettes.html

 

matplotlib colormap 링크 : https://matplotlib.org/stable/users/explain/colors/colormaps.html

 

 

코드

 

엑셀에서 사용된 코드는 아래와 같습니다

 

# 엑셀의 표를 데이터 프레임으로 설정해 변수 df로 지정
df = xl("표1[#모두]", headers=True)

# seaborn 테마를 whitegrid로 지정
sns.set_theme(style="whitegrid")

# 그래프 그리기
sns.relplot(x="height", y="weight", hue="gender", size="age",
            sizes=(40, 200), alpha=.8, palette="RdBu", height=6, data=df)

 

 

 

 

파이썬으로 실습해보시려면 아래 구글코랩 링크를 참조하세요

 

https://colab.research.google.com/github/panda-kim/youtube_1/blob/main/student_replot.ipynb

 

 

 

파이썬으로 실습을 하실 분 중에 파이썬 코드만 필요하신 분은 아래를 참고하세요

 

import pandas as pd
import seaborn as sns

# 깃허브의 엑셀파일로 데이터 프레임 불러서 변수 df로 지정
url = 'https://github.com/panda-kim/excel/blob/main/student_relplot.xlsx?raw=True'
df = pd.read_excel(url)

# seaborn 테마를 whitegrid로 지정
sns.set_theme(style="whitegrid")

# 그래프 그리기
sns.relplot(x="height", y="weight", hue="gender", size="age",
            sizes=(40, 200), alpha=.8, palette='RdBu', data=df, height=8)

 

 

 

 

 

 

 

유튜브에서 판다스 강의 중입니다

 

https://www.youtube.com/@KimPandas