# UI 함수들 (버튼 등등)
import streamlit as st
import pandas as pd
def main() :
df = pd.read_csv('./data/iris.csv')
#버튼 만들기
#유저가 버튼을 누르면 데이터프레임을 보여준다
if st.button(label='데이터보기') :
st.dataframe(df)
#'대문자' 버튼을 만들고, 버튼을 누르면 species 컬럼의 값들을 대문자로 변경한 데이터 프레임을 화면에 보여주세요
if st.button(label='대문자'):
df['species'] = df['species'].str.upper()
st.dataframe(df)
else :
st.text('아무것도 안눌렀습니다')
#라디오버튼 : 여러개중에서 한개 선택하게 할때
my_order = ['오름차순 정렬','내림차순 정렬']
status = st.radio('정렬방식 선택하세요', my_order)
print(status)
# petal_length컬럼으로 정렬해서 df보여준다
if status == my_order[0] :
st.dataframe(df.sort_values('petal_length',ascending=True))
elif status == my_order[1] :
st.dataframe(df.sort_values('petal_length',ascending=False))
#체크박스 : 둘중에 하나만 선택하게끔 만들때 (체크/해제)
#체크하면 헤드 5개 보여주고 해제하면 안보여주도록
if st.checkbox('헤드 5개 보기') :
st.dataframe(df.head())
#셀렉트박스 : 여러개에서 한개만 고르게 하되, 리스트가 많을 때 사용한다
language = ['Python','C','Java','Go','PHP','Dart']
my_choice = st.selectbox('좋아하는 언어 선택하세요', language)
if my_choice == language[0] or my_choice == language[2] :
st.text('정말 재미있는 언어입니다')
elif my_choice == language[3] or my_choice == language[5] :
st.text('배우고 싶습니다')
else :
st.text('오래된 언어입니다')
#멀티 셀렉트 : 여러개중에서, 여러개를 선택하게 할때
#유저가 선택한 컬럼을, 데이터프레임으로 보여주되 아무것도 선택안하면 아무것도 나오지 않게 하시오
choice_list = st.multiselect('원하는 컬럼을 선택하세요', df.columns)
if choice_list :
st.dataframe(df[choice_list])
else :
st.text('')
#슬라이더 : 숫자 조정하는데 주로 사용
st.slider('데이터 선택', -5.0,10.5,0.0,0.5)
#나이를 슬라이더로 입력받는다 1~120세까지
age = st.slider('나이를 입력하세요', 1,120,20,1)
if age :
st.write(f'선택한 나이는 {age}세 입니다')
else :
pass
#익스펜더
with st.expander('Hello') :
st.text('데이터프레임입니다.')
st.dataframe(df)
if __name__ == '__main__' :
main()
버튼을 클릭하면 데이터를 볼 수 있다. st.button
st.button + str.upper()
대문자 버튼을 클릭하면, species가 대문자로 바꾼 데이터프레임을 볼 수 있다.
라디오버튼
체크박스
셀렉트박스
멀티 셀렉트
슬라이더
익스펜더
'Python > Streamlit' 카테고리의 다른 글
Streamlit) 웹페이지에서 유저에게 숫자, 문자, 시간, 색 입력 받기 (2) | 2024.04.26 |
---|---|
Streamlit) 이미지/동영상/음악파일을 웹 페이지 화면에 띄우는 방법 (0) | 2024.04.26 |
Streamlit) 웹 페이지에 다양한 텍스트 표시하기 (0) | 2024.04.26 |
Streamlit) 임포트(import)하여 웹페이지 만들기 (0) | 2024.04.26 |
Streamlit) 가상환경 만들고, 라이브러리 다운 받고, 실행시키기 (0) | 2024.04.26 |