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()
相关推荐
gzxx2007sddx几秒前
windows vnpy运行过程及问题记录
python·量化·vnpy
算法_小学生23 分钟前
LeetCode 热题 100(分享最简单易懂的Python代码!)
python·算法·leetcode
230万光年的思念1 小时前
【无标题】
python
shengli7221 小时前
机器学习与人工智能
jvm·数据库·python
2301_765703141 小时前
Python迭代器(Iterator)揭秘:for循环背后的故事
jvm·数据库·python
追风少年ii1 小时前
多组学扩展---分子对接pyrosetta
python·数据分析·空间·单细胞
2301_821369612 小时前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
m0_561359672 小时前
使用Kivy开发跨平台的移动应用
jvm·数据库·python
编程火箭车2 小时前
04.第一个 Python 程序:Hello World 从编写到运行全解析
python·python第一个程序·python入门报错解决·python新手教程·hello world 程序·python终端运行·pycharm运行代码
qq_423233902 小时前
如何用FastAPI构建高性能的现代API
jvm·数据库·python