꾸준히 성장하기

[D+34] 교육 | 데이터 분석 표현, Streamlit 본문

KT 에이블스쿨 5기/교육

[D+34] 교육 | 데이터 분석 표현, Streamlit

data.dohii 2024. 3. 25. 22:29

오늘, 스트림릿(Streamlit)과의 첫 만남은 제 데이터 분석 여정에 있어서 특별한 날이었습니다.

그간 다양한 수업을 들으면서 많은 것을 배웠지만, 스트림릿은 너무 제 스타일이었습니다.

 

이 경험을 통해, 저는 데이터를 시각화하는 데 큰 매력을 느낀다는 사실을 깨달았습니다.

과거 UX/UI 디자이너로 업무했던 경험 덕분에, 데이터를 명확하고 시각적 결과물로 변환하는 과정이 흥미로웠습니다.

스트림릿을 통해 배운 간단한 코드들이 이러한 변환을 얼마나 쉽게 해줄 수 있는지 보여주었습니다.


1. 미디어 넣기

import streamlit as st

# 1. 이미지 표현

st.image('링크주소/파일명', caption='해돋')

# 2. 오디오

st.header('Audio') st.audio( '링크주소/파일명' )

# 3. 비디오

st.header('Video') st.video( '링크주소/파일명' )

 

2. 기능 넣기

# 1. 체크박스

st.header('Checkbox')

agree = st.checkbox('I agree')

if agree:

    st.write('😄' * 10)

# 2. 토글

st.header('Toggle')

on = st.toggle('Activate feature')

if on:

    st.write('Feature activated!')

# 3. 선택 상자

st.header('Select box')

option = st.selectbox('어떻게 연락 드릴까요?', ('Email', 'Mobile phone', 'Office phone'))

st.write('네, ', option, ' 잘 알겠습니다.')

# 4. 멀티 선택

st.header('Multi select')

options = st.multiselect('좋아하는 색을 모두 선택하세요', ['Green', 'Yellow', 'Red', 'Blue'], ['Yellow', 'Red'])

st.write('선호 색상: ', ','.join(options))

 

3. 지도 시각화(Folium)

# 지도에 원형 마커와 값 추가

for index, row in map_data.iterrows():

    folium.CircleMarker(

        location=[row['lat'], row['lon']],

        radius=row['value'] / 30000,

        color='pink',

        fill=True,

        fill_opacity=1.0

    ).add_to(my_map)

    folium.Marker(

        location=[row['lat'], row['lon']],

        icon=folium.DivIcon(html=f"<div>{row['name']} {row['value']}</div>")

    ).add_to(my_map)

# 지도 그리기

st.components.v1.html(my_map._repr_html_(), width=800, height=600)


이러한 코드 예제들은 스트림릿을 사용하여 데이터를 시각화하고 사용자 인터랙션을 구현하는 방법을 보여줍니다.

데이터를 단순한 숫자의 나열로만 처리하지 않고 시각적인 스토리텔링을 통해 의미 있는 정보로 변환하는 것의 중요성을 깊이 깨닫게 되었습니다.

 

내일 데이터 분석 표현 강의도 너무너무 기대가 됩니다😊

반응형