페이지 설정까지 대략 알아봤으니, 안에 입력할 데이터들을 조금 더 다채롭게 표현해보자. 기존 레이아웃 편에서 작성한 페이지를 기반으로 설명할 예정이니, 기존 페이지를 먼저 참고하는 것도 좋을듯. (https://pcnc.tistory.com/10)
● metric('설명','데이터','변화량')
데이터의 변화량을 색깔로 나타내주는 함수이다. '변화량' 파라미터의 경우 음수는 빨간색 양수는 초록색으로 시각화가 가능하다.
col10, col11, col12 = st.columns(3)
col10.metric('피자가 기존보다 얼만큼 식었나!', '50 °C', '-13.5 °C')
col11.metric('배달원의 속도는 기존보다 빨랐나?', '60 km/h', '-8%')
col12.metric('가격이 올랐는가?', '20,000원', '4%')
다음과 같은 코드셋을 입력하면,
다음과 같은 화면을 작성할 수 있다.
● slider('설명',min_value = 최소값,max_value = 최대값,value = 최초값)
데이터의 범위를 입력하여, 특정 데이터값을 출력할 수 있는 장치이다. 범위로도 지정이 가능하여 수치형 자료에 유용하게 쓰인다.
st.slider('오늘 피자가 얼만큼 당겨요?', min_value=0, max_value=100, value = 50)
st.slider('지금 배는 얼만큼 고파요?', min_value = 0, max_value = 100, value = (30,50)
두번째 페이지에 다음과 같은 코드셋을 입력하면
다음과 같은 슬라이더 구성이 가능하다.
● 버튼형 데이터 입력
- button('설명')
boolean 값을 반환한다.
- checkbox('설명')
체크박스를 보여준다.
- radio('설명',(''넣고','싶은','데이터'))
여러개의 값을 넣고, 선택할 수 있다.
- selectbox('설명',('넣고','싶은','데이터'))
상 하단에 여러가지 조건을 넣어줄 수 있다.
- st.multiselect('설명',['넣고','싶은','데이터'],['보여줄','기본값'])
여러가지 리스트들 중 원하는 데이터를 넣어서 보여줄 수 있다.
st.button('파인애플 피자를 먹고싶나요')
st.checkbox('진심인가요')
st.radio('이유가 무엇인가요',('재료를 낭비하고 싶다','고통받는것을 즐긴다','식사과 후식을 동시에 원한다'))
st.selectbox('파인애플 말고 다른 과일도 넣고싶나요',('사과','복숭아','체리','귤'))
st.multiselect('다른 음식을 드세요',['한식','중식','일식','양식'],['한식','일식'])
다음과 같은 코드셋을 3페이지 하단에 넣어보면,
다음과 같은 페이지를 확인할 수 있다.
● 텍스트형 데이터 입력
- text_input('설명','기본값')
텍스트 입력이 가능하다.
- number_input('설명',min_value = 최소값, max_value = 최대값, value = 기본값, step = 증감수치)
숫자를 입력할 수 있다. 버튼형으로 수치를 조정하거나, 직접 입력도 가능하다.
- date_input('설명',datetime(최초기본날짜), datetime(마지막기본날짜), value = (datetime(최초선택 시작일자), datetime(마지막선택 기준일자), format = 'YY/MM/DD')
날짜를 입력할 수 있다. format 파라미터를 통해 변경이 가능하니, 형태가 꼭 YY/MM/DD일 필요는 없다.
menu = st.text_input('최애 브랜드를 입력하세요 ', '파파존스')
st.write('당신이 가장 좋아하는 영화는 :', menu)
number = st.number_input('얼만큼 기대되나요', min_value=1, max_value=10, value=5, step=1)
st.write('당신의 기대도는 :', number)
from datetime import datetime
date = st.date_input('언제부터 먹고싶었나요',datetime(2000, 9, 6))
st.write('이때부터 당겼군요! :', date)
두번째 페이지에 위같은 코드셋을 입력해 보았다.
다음과 같은 결과를 얻을 수 있다.
알아본 입력 함수들은 전부 write를 통해서도 쓸 수 있고, 변수로 데이터들을 담아올 수 있어 함께 사용하면 강력한 기능구현이 가능하니, 기본적으로 익히고 streamlit을 사용하면 좋을 것이다.
기본적인 입력표현은 여기까지. 추후에 다른 입력함수를 익힌다면, 포스팅 예정이다.
'파이썬 - 시각화' 카테고리의 다른 글
Streamlit - 레이아웃 (2) | 2023.04.22 |
---|---|
Streamlit - 입력하기 (4) | 2023.04.13 |