Streamlit 라이브러리에 있는 UI 함수들
UI 란?
사용자 인터페이스 또는 유저 인터페이스(영어: user interface, UI)는
사람(사용자)과 사물 또는 시스템, 기계, 컴퓨터 프로그램 등 사이에서 의사소통을 할 수 있도록
일시적 또는 영구적인 접근을 목적으로 만들어진 물리적, 가상적 매개체이다
UI 함수들을 사용하기 위한 라이브러리 임포트
import streamlit as st
import pandas as pd
버튼 button()
# 처음 시작 함수
def main() :
df = pd.read_csv('./data/iris.csv')
# 버튼을 클릭하면 데이터프레임을 보여준다
if st.button('데이터프레임 보기') :
st.dataframe(df)
# 응용. '대문자' 버튼을 만들고
# 문자열 컬럼의 값들을 대문자로 변경한 데이터프레임 만들기
if st.button('대문자') :
st.dataframe(df['species'].str.upper())
else :
st.text('버튼을 눌러주세요')
# 마지막에 적어주는 코드
if __name__ == "__main__" :
main()
라디오 버튼 radio()
- 여러 개 중에 한 개를 선택하게 할 경우 사용하는 함수이다
# 선택사항 만들 레이블 리스트로 만들기
my_order = ['오름차순 정렬','내림차순 정렬']
# radio(label= , option= ) 유저한테 받을 정보 변수에 저장
status = st.radio(label='정렬방법 선택하세요', options = my_order)
# 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))
체크박스 checkbox()
# 체크박스 : 둘 중에 하나만 선택하게 만들때. (체크 / 해제)
# 체크하면, 헤드 5개 보여주고, 해제하면 안보여주도록,
if st.checkbox('헤드 5개 보기') :
st.dataframe(df.head(5))