Traffine I/O

Bahasa Indonesia

2023-02-10

Streamlit

Apa itu Streamlit

Streamlit adalah sebuah kerangka kerja Python yang memungkinkan pengembangan aplikasi sains data dan pembelajaran mesin dengan mudah tanpa memerlukan pengetahuan tentang HTML, CSS, atau teknologi web lainnya. Ini memungkinkan visualisasi data tanpa perlu pengembangan web yang kompleks.

Instalasi

Anda dapat menginstal Streamlit menggunakan perintah berikut:

bash
$ pip install streamlit

Menjalankan Streamlit

Buat file app.py dengan konten berikut:

app.py
import streamlit as st

st.title("hello world")

Kemudian, jalankan perintah berikut untuk menjalankan aplikasi Streamlit:

bash
$ streamlit run app.py
You can now view your Streamlit app in your browser.

Local URL: http://localhost:8555

Anda dapat mengakses aplikasi Streamlit Anda dengan mengunjungi http://localhost:8555 di peramban web Anda.

Streamlit | 1

Teks

Dengan Streamlit, Anda dapat menampilkan teks menggunakan Markdown dan fungsi teks lainnya.

app.py
import streamlit as st

st.title("title") # Title
st.header("header") # Header
st.write("write") # Display
st.markdown("# markdown") # markdown
st.text("text") # Text

Streamlit | 2

Widget

Streamlit menyediakan berbagai macam widget interaktif seperti slider, kotak centang, tombol radio, dll.

app.py
import streamlit as st

st.button("Button")  # Button
st.selectbox("Selectbox", ("Option 1", "Option 2"))  # Select box
st.multiselect("Multi selectbox", ("Option 1", "Option 2"))  # Multi select box
st.slider("Slider", 0, 100, 20)  # Slider
st.radio("Radio button", ("Radio 1", "Radio 2"))  # Radio button
st.checkbox("Check button")  # Checkbox
st.text_input("Text input")  # Text input (one line)
st.text_area("Text area")  # Text input (multiple line)
st.file_uploader("Choose file")  # File upload

Streamlit | 3

Anda dapat mengontrol tampilan widget dengan menetapkan nilai kembali mereka ke dalam variabel.

app.py
import streamlit as st

checked = st.checkbox("Check button")

if checked:
    st.button("Button")

Streamlit | 4
Streamlit | 5

Sidebar

Dalam Streamlit, selain dari area aplikasi utama, Anda dapat menggunakan sidebar untuk menampilkan widget.

app.py
import streamlit as st

st.button("Button")

st.sidebar.text_input("Text input")
st.sidebar.text_area("Text area")
st.sidebar.slider("Slider", 0, 100, 20)

Streamlit | 6

Tabel

Streamlit memiliki dukungan bawaan untuk menampilkan DataFrames Pandas sebagai tabel yang diformat, sehingga memudahkan untuk menyajikan data dalam bentuk tabel.

app.py
import numpy as np
import pandas as pd

import streamlit as st

df = pd.DataFrame(np.random.randn(5, 10))
st.dataframe(df)  # Pandas dataframe
st.table(df)  # Table
st.metric(
    label="Temperature",
    value=f"{round(df[0].mean(), 2)} °F",
    delta=f"{round(df[0].max() - df[0].min(), 2)} °F",
)  # Metrics

Streamlit | 7

Grafik

Anda dapat menggunakan Streamlit untuk memvisualisasikan data melalui grafik.

app.py
import streamlit as st
import pandas as pd
import numpy as np

dataframe = pd.DataFrame(np.random.randn(20,3), columns=["a", "b", "c"])
st.line_chart(dataframe) # Line
st.area_chart(dataframe) # Chart
st.bar_chart(dataframe) # Bar

Streamlit | 8

Peta

Streamlit menyediakan dukungan bawaan untuk menampilkan data geografis.

app.py
import streamlit as st
import pandas as pd
import numpy as np

df = pd.DataFrame(
    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],
    columns=['lat', 'lon'])
st.map(df)

Streamlit | 9

Referensi

https://docs.streamlit.io/
https://docs.streamlit.io/library/api-reference

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!