timmy / 📊 Streamlit + Tabulator:打造互動式資料表格超簡單
0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 8 months ago
用 Streamlit + Tabulator.js 展示 DataFrame,支援欄位過濾、分頁、編輯,前端美觀又實用 🚀
| 1 | import streamlit as st |
| 2 | import pandas as pd |
| 3 | import json |
| 4 | import streamlit.components.v1 as components |
| 5 | |
| 6 | # 假設有一個 DataFrame |
| 7 | df = pd.DataFrame({ |
| 8 | "訂單單別": ["A", "B", "C"], |
| 9 | "訂單單號": [101, 102, 103], |
| 10 | "客戶簡稱": ["客戶1", "客戶2", "客戶3"], |
timmy / 已安裝的 Python 套件列表輸出為 CSV
0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 9 months ago
此程式碼用於取得目前 Python 環境中所有已安裝的套件名稱和版本,並將結果整理成 CSV 檔案,方便進行記錄、分享或系統排查。
| 1 | # 引入需要用到的套件 |
| 2 | import pandas as pd # 用來處理資料,還能幫我們存成 CSV 檔 |
| 3 | from pkg_resources import working_set # 用來拿到所有已安裝的套件清單 |
| 4 | |
| 5 | # 步驟 1: 把所有已安裝的套件名稱和版本抓出來,直接變成 Pandas DataFrame |
| 6 | # 用列表生成式搭配 DataFrame,省去不必要的中間變數 |
| 7 | df_packages = pd.DataFrame( |
| 8 | [(pkg.key, pkg.version) for pkg in working_set], |
| 9 | columns=["Package", "Version"] |
| 10 | ).sort_values(by="Package") |
timmy / 使用 Streamlit st.session_state 管理可編輯 DataFrame
0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 9 months ago
透過 st.session_state 讓 Streamlit 應用能夠保存並管理可編輯的 DataFrame,避免頁面重整導致資料丟失,適用於數據管理與即時編輯應用。
| 1 | import streamlit as st |
| 2 | import pandas as pd |
| 3 | |
| 4 | def main(): |
| 5 | # 初始化 session_state |
| 6 | if "data" not in st.session_state: |
| 7 | st.session_state.data = pd.DataFrame({ |
| 8 | "ID": [1, 2, 3], |
| 9 | "Name": ["Alice", "Bob", "Charlie"], |
| 10 | "Age": [25, 30, 35], |
timmy / Streamlit 大規模資料表格與互動編輯
0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 10 months ago
此範例展示如何使用 Streamlit 處理大量資料,並提供可視化表格 (dataframe) 和可編輯表格 (data_editor) 來動態調整資料。支援圖片預覽、進度條顯示及類別選擇,適用於資料分析與管理應用。
| 1 | import streamlit as st |
| 2 | import pandas as pd |
| 3 | import numpy as np |
| 4 | |
| 5 | st.write("Got lots of data? Great! Streamlit can show [dataframes](https://docs.streamlit.io/develop/api-reference/data) with hundred thousands of rows, images, sparklines – and even supports editing! ✍️") |
| 6 | |
| 7 | num_rows = st.slider("Number of rows", 1, 10000, 500) |
| 8 | np.random.seed(42) |
| 9 | data = [] |
| 10 | for i in range(num_rows): |
Новее
Позже