用不到 40 行 Python 代码构建 2025 年的股票仪表板!🤓
构建交互式数据仪表板似乎令人生畏。
特别是如果您不熟悉 HTML/CSS/JS 等前端技术。
但是,如果您仅使用 Python 就可以创建一个功能齐全、可立即投入生产的数据科学仪表板,那会怎样?
输入Taipy,一个简化创建数据应用程序过程的开源库。
在本教程中,Mariya Sha 将指导您使用Taipy、Plotly和来自Kaggle的数据集构建股票价值仪表板。
我们的应用程序将动态过滤数据、显示图表并处理用户输入——所有这些都从头开始。
准备好了吗?让我们开始吧!
步骤 1:设置环境
首先,我们需要创建一个新的 Python 环境。如果你使用 Conda,可以按如下方式设置:
conda create -n ds_env python=3.11
conda activate ds_env
pip install taipy pandas plotly
克隆该项目的资源:
git clone https://github.com/MariyaSha/data_science_dashboard.git
cd data_science_dashboard/starter_files
这将作为我们的项目根目录。在其中,您将找到图像、线框图和一个 Python 文件(main.py
)。
第 2 步:使用 Taipy 设计 GUI
让我们为应用程序添加标题和徽标。打开 main.py 并开始编写代码:
import taipy.gui as tgb
with tgb.page("Stock Dashboard"):
# Add a logo
tgb.image("images/icons/logo.png", width="10vw")
# Add a title
tgb.text("# S&P 500 Stock Value Over Time", mode="md")
运行你的应用程序:
taipy run main.py
导航到http://localhost:5000,您将看到您的基本应用程序!
步骤3:添加用户输入
要按日期过滤数据,请添加日期范围选择器:
import datetime
dates = [datetime.date(2023, 1, 1), datetime.date(2024, 1, 1)]
with tgb.page("Stock Dashboard"):
# Existing elements...
# Add date range selector
tgb.date_range(
value="{dates}",
label_start="Start Date",
label_end="End Date",
)
步骤 4:使用 Taipy 进行动态数据处理
让我们加载数据集并根据用户输入动态过滤它。
import pandas as pd
# Load the stock data
stock_data = pd.read_csv("data/sp500_stocks.csv")
def filter_data(state, name, value):
if name == "dates":
start, end = state.dates
filtered_data = stock_data[
(stock_data["Date"] >= str(start)) &
(stock_data["Date"] <= str(end))
]
state.filtered_data = filtered_data
tgb.add_callback("filter_data", filter_data)
步骤5:可视化数据
最后,让我们用 Plotly 绘制数据:
import plotly.graph_objects as go
def create_chart(data):
fig = go.Figure()
fig.add_trace(
go.Scatter(
x=data["Date"],
y=data["High"],
name="Stock Value",
mode="lines"
)
)
return fig
with tgb.page("Stock Dashboard"):
# Existing elements...
# Display the chart
tgb.chart(figure="{create_chart(filtered_data)}")
最后的想法
瞧!您已经使用Taipy
构建了一个股票仪表板,可以处理动态用户输入和数据可视化——所有这些都无需编写任何 HTML、CSS 或 JavaScript。
想要更进一步吗?
探索 Taipy 场景,实现更动态的后端交互。查看Taipy 官方 GitHub 仓库,为他们的开源计划贡献力量!
PS:您可以在这里观看视频教程。
文章来源:https://dev.to/taipy/build-a-stock-dashboard-in-less-than-40-lines-of-python-code-3b78