如何更新第二个绘图轴绘图Scatter3D子绘图



祝你今天愉快,

随着时间的推移,我试图用情节的Scatter3d来描绘一个复杂系列的想象和真实部分。X为实部,Y为虚部,z为时间。

但我有两个系列,我想并排显示两个结果散点图进行比较。为此,我使用了makesubplot函数。

现在,我想用它们相应的名称来标记每个轴(见上文(。但我只能更新第一个子情节,而不能更新第二个子情节。

这是我的源代码,它只更新第1行第1列的第一个子图:

d_E1 = go.Scatter3d(
x=df['Real_E1'],
y=df['Im_E1'],
z=df['Time'],
)
d_E2 = go.Scatter3d(
x=df['Real_E2'],
y=df['Im_E2'],
z=df['Time'],
)
fig                 = make_subplots(   
rows    = 1,  
cols    = 2,
specs    = [[{"type": "scene"}, {"type": "scene"}]],                                          
)
fig.update_layout(scene = dict(
xaxis = dict( title='X AXIS TITLE'),
yaxis = dict( title='y AXIS TITLE'),
zaxis = dict( title='Z AXIS TITLE')
))

fig.add_trace(d_E1, row=1, col=1)
fig.add_trace(d_E2, row=1, col=2)
plotly.offline.plot(fig, filename='3d.html')

上方代码的结果

我尝试过如下更改fig.update_layout,但这当然不起作用:

1此更新继续。散点图。我可以运行代码,但它不会改变任何内容。

fig.update_xaxes(title_text="X AXIS TITLE", row=1, col=1)
fig.update_xaxes(title_text="X AXIS TITLE", row=1, col=2)

2在Stackoverflow上我发现了这个:

fig['layout']['xaxis']['title']='Label x-axis 1'
fig['layout']['xaxis2']['title']='Label x-axis 2'
fig['layout']['yaxis']['title']='Label y-axis 1'
fig['layout']['yaxis2']['title']='Label y-axis 2'

错误是,xaxis2就是没有在此上下文中定义xaxis2!?错误消息

3在同一个网站上是一个带有for循环的解决方案,有了这个我可以运行代码,但它什么都不改变。。。Plotly:如何将轴布局添加到子图中?

4然后我尝试了这个,我的编译器说他不知道xaxis2:

fig.update_layout(scene = dict(
xaxis = dict( title='X AXIS TITLE'),
xaxis2 = dict( title='X AXIS TITLE'),
yaxis = dict( title='y AXIS TITLE'),
zaxis = dict( title='Z AXIS TITLE')))

我使用的是plotly版本4.14.3

我刚刚找到它:

https://github.com/plotly/plotly.py/issues/2483

fig.update_scenes(
xaxis = dict( title_text='x-title'),
yaxis = dict( title_text='y-title'),
zaxis = dict( title_text='z-title'),
)

最新更新