멋사 AISCOOL 7기 Python/INPUT

시각화 총정리: plotly

dundunee 2022. 10. 28. 01:22

국가 권역별 수출 수입에 대한 데이터를 시각화해보고자 한다.

world = ['아시아', '중동', '유럽', '북미', '중남미', '아프리카', 
 '오세아니아', '기타지역', 'EU(27)', 'OECD', 'ASEAN', 
 'LAIA', '선진국', 'OPEC', '개발도상국']

df_word = df[df["국가권역"].isin(world)]
df_country = df[~df["국가권역"].isin(world)]
px.histogram(df_country, x="달러", y="국가권역", histfunc="sum")

  • plotly express histogram == seaborn의 barplot과 유사한 기능을 한다.
  • seaborn의 estimate == plotly의 histfunc
  • histfunc의 기본값은 count이며, 그렇지 않은 경우 sum으로, 아니면 지정해줘야한다.
# color, barmode
px.histogram(df_country, x="달러", y="국가권역", histfunc="sum", color = "항목", barmode = "group")

#height
px.histogram(df_country, x="달러", y="국가권역", histfunc="sum", color = "항목", barmode = "group", height=600)

#서브플롯: facet_col
#color 값 = facet_col 값
px.histogram(df_country, x="달러", y="국가권역", 
             histfunc="sum", color = "항목", facet_col="항목")

#color != facet_col
px.histogram(df_country, x="달러", y="국가권역", 
             histfunc="sum", color = "항목", barmode = "group", facet_col="산업")

#그래프 함께 그리기: marginal
px.histogram(df_country, x="달러", histfunc="sum", color = "산업", 
             marginal="violin")

국가권역 달러 합계 상위 20개국은 아래와 같으 추출한다 sum().nlargest(20)

top20 = df.groupby("국가권역")["달러"].sum().nlargest(20)
#seaborn을 사용한 상위 20개항목에 대한 시각화
df_top20 = df[df["국가권역"].isin(top20)
sns.catplot(data = df_top20, x="연", y="달러", kind="point",
             hue="항목", col="국가권역", estimator="sum", col_wrap=4)