
10/10 1, 2, 3, 4회차
허신 강사님
시각화 및 상호작용에 용이, 배포 가능
터미널에서
> streamlit run 파일이름.py
제목 : st.title(), st.header(), st.subheader()
캡션 : st.caption()
마크다운 : st.markdown()
줄긋기 : st.divider()
코드 : st.code()
라텍스 : st.latex(r'''). \를 텍스트록 인식하도록 r로 감싸기
String, data_frame, chart, graph, LaTex : st.write(). 대부분의 Object 표현 가능
import streamlit as st
import pandas as pd
st.title('Text elements')
st.caption('text 참고사이트: https://docs.streamlit.io/library/api-reference/text')
st.markdown('### Heading & Body - title, header, subheader, text')
st.title('This is the title')
st.header('This is the header')
st.subheader('This is the subheader')
st.text('This is the text')
이미지 : st.image() . 캡션 넣기는 caption='' 옵션 추가.
오디오 : st.audio()
비디오 : st.video()
데이터프레임 : st.dataframe(). 열 크기 조정 가능. 컬럼명으로 sorting
표 : st.table(). 고정 형태 테이블
데이터 편집 : st.data_editor() : 데이터 변경
metric 측정 항목 : st.metric(label, value, delta)
- label : 타이틀
- value : 값
- delta : 변동 값
칸 나누기 : col1, col2, col3 = st.columns()
- col1.metric()
col1, col2, col3 = st.columns(3)
col1.metric(label='온도', value='24.0 °C', delta='2.5 °C')
col2.metric(label='습도', value='70.4 %', delta='-1.2 %')
col3.metric(label='풍속', value='9 mph', delta='-8%')
링크 버튼 : st.link_button()
라디오 버튼 : st.radio(제목, (선택 리스트))
버튼 : st.button(). 한번 밖에 못누름
체크박스 : st.checkbox()
토글 : st.toggle()
셀렉트 박스 : st.selectbox(제목, (선택 리스트))
멀티 셀렉트 :: st.multiselect(제목, [선택 리스트], [기본 선택 요소])
st.header('5. Select box')
option = st.selectbox('어떻게 연락 드릴까요?',('Email', 'Mobile phone', 'Office phone'))
st.write('네 ', option, ' 잘 알겠습니다')
st.header('6. Multi select')
options = st.multiselect('좋아하는 색을 모두 선택하세요', ['초록', '노랑', '빨강', '파랑', '하양'], ['빨강', '하양'])
st.write('선호색상 : ', ', '.join(options))
텍스트 입력 : st.text_input()
숫자 입력 : st.number_input(제목, min_value, max_value, value, step)
날짜 입력 : st.date_input(제목, datetime(년, 월, 일))
채팅 : st.chat_input()
구간 선택 : st.slider(제목, 최소 입력 허용 값, 최대 입력 허용 값, 초기값)
st.subheader('**_Slider- 이전 구간_**')
age = st.slider('당신의 나이는?', 1, 100, 50)
st.write(f'당신의 나이는 {age} 입니다.')
st.subheader('**_최소-최대값 내에서 숫자 사이 구간_**')
values = st.slider('당신은 한달에 몇 번 라면을 먹나요?', 1, 31, (10, 20))
st.write(f'당신은 한 달에 {values[0]}회 ~ {values[1]}회 라면을 먹습니다')
st.subheader('**_년 월 일 사이 구간_**')
slider_date = st.slider(
'날짜 구간을 선택하세요 ',
min_value=datetime(2021, 1, 1),
max_value=datetime(2021, 12, 31),
value=(datetime(2021, 6, 1),datetime(2021, 7, 31)),
format='YY/MM/DD')