python - 如何在 Plotly 中启用和禁用对数刻度作为查看器?
问题描述
我最近正在探索 Plotly,我想知道是否有一种方法可以共享绘图并让查看器在对数轴和线性轴之间切换。
有什么建议吗?
解决方案
Plotly 有一个下拉功能,允许用户动态更新绘图样式和/或正在显示的轨迹。下面是一个绘图的最小工作示例,用户可以在对数和线性刻度之间切换。
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
以显示如何在绘图中添加或删除迹线。这可以通过for each中的visible
列表来控制。updatemenus
button
推荐阅读
- visual-studio-code - Visual Studio Code:在对象中调用智能感知
- ios - 如何滚动到 UITableView 中没有行的部分?
- python - 张量流中模型之间的传递参数减慢了训练时间
- angular - 以角度将 HttpInterceptor 注入到 app.module.ts 问题
- python-3.x - 谷歌使用硒搜索下一页
- asp.net - 如何在 TestMethod CUIT 中获得 Ajax 响应
- firebase - Firebase 云函数示例 addMessage Forbidden
- android - 运行测试用例以检查 MVVM 中的存储库时出现此错误
- python - 如何使 Strassen 算法(矩阵多飞)更有效?
- c# - 账户之间的 EWS 扩展属性