python - 如何在 Plotly 中作为查看器启用和禁用对数刻度?

标签 python plot plotly axes plotly-dash

我最近正在探索 Plotly,我想知道是否有一种方法可以共享绘图并让观看者在对数轴和线性轴之间切换。

有什么建议吗?

最佳答案

Plotly 有一个 dropdown允许用户动态更新绘图样式和/或显示的迹线的功能。下面是一个最小的绘图工作示例,用户可以在对数和线性刻度之间切换。

import plotly
import plotly.graph_objs as go


x = [1, 2, 3]
y = [1000, 10000, 100000]
y2 = [5000, 10000, 90000]

trace1 = go.Bar(x=x, y=y, name='trace1')
trace2 = go.Bar(x=x, y=y2, name='trace2', visible=False)


data = [trace1, trace2]

updatemenus = list([
    dict(active=1,
         buttons=list([
            dict(label='Log Scale',
                 method='update',
                 args=[{'visible': [True, True]},
                       {'title': 'Log scale',
                        'yaxis': {'type': 'log'}}]),
            dict(label='Linear Scale',
                 method='update',
                 args=[{'visible': [True, False]},
                       {'title': 'Linear scale',
                        'yaxis': {'type': 'linear'}}])
            ]),
        )
    ])

layout = dict(updatemenus=updatemenus, title='Linear scale')
fig = go.Figure(data=data, layout=layout)

plotly.offline.iplot(fig)

我在data列表中添加了两条迹线,以展示如何在绘图中添加或删除迹线。这可以通过每个按钮updatemenus中的visible列表来控制。

关于python - 如何在 Plotly 中作为查看器启用和禁用对数刻度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54872300/

相关文章:

query-performance - 如何使用 SQLAlchemy 和 PostgreSQL 对大表中的所有行进行有效排序?

python - 从 csv 读取后,第一列名称用双引号括起来

python - 如何防止执行脚本时打开 HTML 本地文件?

matlab - 访问图中的图以在 MATLAB 中添加新图

r - 我可以放大一个图并让其他图也以同样的方式缩放吗? (ggplot 和plotly)

r - 包装长轴标签

python - Pandas:Dataframe 计算 - 带除法的新行、带总和和平均值的新列

python - 当维度未知时如何创建一维范围张量?

颜色的 Python 3d 散点图图例仅显示第一种颜色

c# - WPF 中的图形绘制(功能)