실전 데이터 앱 개발,
최고의 UX/UI와 실무 꿀팁으로
누구나 따라하고 성장할 수 있도록
Ctrl+Shift+P 조합 → 검색창에 "python:인터프리터 선택" 입력 (base) C:\STR>python --version (base) C:\STR>conda --version(예시: Python 3.13.5 , conda 25.5.1 )
(base) C:\STR> conda create -n STR python=3.13.5(파이썬 버전은 본인 버전에 맞게 입력)
(base) C:\STR> conda activate STR
(STR) C:\STR> conda deactivate
C:\STR>conda env list
(STR) C:\STR>pip install streamlit (STR) C:\STR>pip install seaborn (STR) C:\STR>pip install matplotlib
(STR) C:\STR>streamlit run app.py
C:\STR\app.py
import streamlit as st
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
st.write('Hello!!!!,:sunglasses:')
st.write('Hello!!!!,:sunglasses:')
st.title('Title *Markdown* 인식')
st.header('Title *Markdown* 인식')
st.subheader('Title *Markdown* 인식')
st.text('title *Markdown* 인식못함.')
st.markdown('*Markdown* 출력.')
st.text('This is some text.')
x=10
y=20
st.write('x=',x,'y=',y)
df = pd.DataFrame({'col1':[1,2,3]})
st.write('데이터 프레임',df)
df # 데이터프레임을 직접 작성하여 출력도 가능
arr = np.random.normal(1,1,size=100)
fig, ax = plt.subplots()
ax.hist(arr, bins=20)
st.pyplot(fig)
C:\STR\app1.py (붓꽃 데이터 시각화 앱)
import streamlit as st
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
_, col, _ = st.columns([2,6,2])
col.header("Streamlit 시각화")
dfIris = sns.load_dataset('iris')
colors = {"setosa":"red", "virginica":"green", "versicolor":"blue"}
st.sidebar.title('Iris Species🌸') # 사이드바 제목
with st.sidebar: # 사이드바 안에 위젯 배치
selectX = st.selectbox("X 변수 선택:", ["sepal_length", "sepal_width", "petal_length", "petal_width"])
selectY = st.selectbox("Y 변수 선택:", ["sepal_length", "sepal_width", "petal_length", "petal_width"])
selectSpecies = st.multiselect("붓꽃 유형 선택 (:blue[다중]):",["setosa", "versicolor", "virginica"])
selectAlpha = st.slider("alpha 설정:", 0.1, 1.0, 0.5)
# 선택된 붓꽃 유형별 산점도로 시각화 표현
if selectSpecies: # 붓꽃 유형이 선택되었을 경우
fig = plt.figure(figsize=(7,5)) # 그래프 크기 설정
for aSpecies in selectSpecies: # 선택된 각 종(species)에 대해
df = dfIris[dfIris.species==aSpecies] # 해당 종의 데이터만 필터링
plt.scatter(df[selectX], df[selectY], color=colors[aSpecies], alpha=selectAlpha, label=aSpecies)
plt.legend(loc="lower right") # 범례 위치 설정
plt.xlabel(selectX) # X축 레이블 설정
plt.ylabel(selectY) # Y축 레이블 설정
plt.title("Iris Scatter Plot") # 그래프 제목 설정
st.pyplot(fig) # Streamlit에 Matplotlib 그래프 표시
else: # 붓꽃 유형이 선택되지 않았을 경우
st.warning("붓꽃의 유형을 선택해 주세요!!!") # 경고 메시지 표시