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()
相关推荐
!chen1 小时前
Error: error:0308010C:digital envelope routines::unsupporte
python
小北方城市网2 小时前
分布式锁实战指南:从选型到落地,避开 90% 的坑
java·数据库·redis·分布式·python·缓存
xiaolyuh1232 小时前
【XXL-JOB】 GLUE模式 底层实现原理
java·开发语言·前端·python·xxl-job
数据智研2 小时前
【数据分享】(2005–2016年)基于水资源承载力的华北地区降水与地下水要素数据
大数据·人工智能·信息可视化·数据分析
likuolei2 小时前
Spring AI框架完整指南
人工智能·python·spring
二哈喇子!2 小时前
PyTorch生态与昇腾平台适配:环境搭建与详细安装指南
人工智能·pytorch·python
Learner2 小时前
Python数据类型(三):列表和元组
开发语言·python
世界唯一最大变量2 小时前
用自创的算法快速解决拉姆奇数
python
leluckys2 小时前
AI- 一种快速实现MCP服务的方法
开发语言·python
写代码的【黑咖啡】3 小时前
探索 Python 中的 Vaex:高效处理大规模数据的新选择
开发语言·python