Plotly库利用滑块创建数据可视化

使用了Plotly库来创建一个数据可视化图表,并使用滑块来控制显示哪些数据

python 复制代码
import plotly.graph_objects as go
from plotly.subplots import make_subplots

# 示例数据
x = [1, 2, 3, 4, 5]
y1 = [1, 2, 3, 4, 5]
y2 = [5, 4, 3, 2, 1]
y3 = [2, 3, 1, 5, 4]

# 创建子图
fig = make_subplots(rows=1, cols=1)

# 添加初始数据
fig.add_trace(
    go.Scatter(x=x, y=y1, name="Data 1", visible=True),
    row=1, col=1
)
fig.add_trace(
    go.Scatter(x=x, y=y2, name="Data 2", visible=False),
    row=1, col=1
)
fig.add_trace(
    go.Scatter(x=x, y=y3, name="Data 3", visible=False),
    row=1, col=1
)

# 创建滑块
steps = []
for i, y in enumerate([y1, y2, y3]):
    step = dict(
        method="update",
        args=[{"visible": [False] * 3}, {"title": "Data {}".format(i+1)}],
        label="Data {}".format(i+1)
    )
    step["args"][0]["visible"] = [False] * 3
    step["args"][0]["visible"][i] = True
    steps.append(step)

sliders = [dict(
    active=0,
    currentvalue={"prefix": "Show: "},
    steps=steps
)]

# 更新布局
fig.update_layout(
    sliders=sliders,
    title="Data Visualization"
)

# 显示图表
fig.show()
相关推荐
2601_954811828 小时前
机器视觉教学套件选型指南:五维技术参数对比与课程体系评估
python·数码相机
小马不起床9 小时前
零基础玩转 FastAPI_05:后端课程模块
python·fastapi
小王2049 小时前
Day 41:模型注意力机制 — SE / CBAM / ECA
python·深度学习·机器学习
171320330计算机毕设编程10 小时前
计算机毕业设计 基于YOLO改进算法的车辆特征识别系统设计与实现--lw
java·大数据·python·sql·算法
Web极客码10 小时前
Python Ollama 本地 Agent 入门与订单查询实践
开发语言·jvm·python
snhna10 小时前
DeerFlow 2.x 源码拆解:多智能体委派、Skills、沙箱与 Linux 部署实战
人工智能·python
Wx-bishekaifayuan10 小时前
springboot桂味美食分享系统40540-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Metaphor69210 小时前
如何快速拆分超大 Excel 文件【Python 教程】
python·excel
Elastic 中国社区官方博客11 小时前
Kibana:创建包含时间序列图表的仪表板
大数据·elasticsearch·搜索引擎·信息可视化·全文检索·kibana
孟健11 小时前
从单体失控到解耦管道:用 Unix 哲学重构 Anthropic 式多 Agent 动态工作流
人工智能·python·架构