0

我有一个使用 z_axis 不对称误差线的 3d 图,但是当我将鼠标悬停在数据点上时,我只得到(x,y,z)信息而不是(x,y,z +err/-err).

错误栏的 Plotly 文档表明此信息应自动包含在悬停标签中。我尝试使用该hovertext属性(hoverinfo='text'根据Scatter3d 文档设置)但没有成功。也许我重新格式化标签的尝试不是情节需要的格式,但我现在尝试了几种不同的方法都无济于事。下面是尝试使用hovertextandhoverinfo属性的代码。

import pandas as pd
import numpy as np

import plotly.plotly as py
import plotly.graph_objs as go
from plotly.offline import iplot, init_notebook_mode
import cufflinks as cf

cf.go_offline()
cf.set_config_file(world_readable=True,theme='pearl',offline=True)
init_notebook_mode()

x = [1,2,3,4,5]
y = [1,2,3,4,5]
z1 = [1,2,3,4,5]
z2 = np.multiply(z1,2)
z3 = np.multiply(z1,0.5)
df = pd.DataFrame({'A':x,'B':y,'C':z1,'D':z2,'E':z3})
test = []
for row in df.values:
    test.append('x:{}; y:{}; z={} +{}/-{}'.format(row[0],row[1],row[2],row[3],row[4]))

fig = go.Figure()
fig.add_trace(
    go.Scatter3d(
        x=x, 
        y=y, 
        z=z1, 
        # https://plot.ly/python/reference/#scatter3d-error_z
        error_z = dict( 
            visible=True,
            type='data',
            array=np.subtract(z2,z1),
            arrayminus=np.subtract(z1,z3)
        ), 
        name='Test Plot',
        marker=dict(size=4),
        opacity = 1, # 1=default
        mode='markers',
        hovertext=test,
        hoverinfo='text' # set this to 'text' if using 'hovertext' attr        
    )
)

fig.layout.update(scene = dict(
        xaxis_title='X Axis',
        yaxis_title='Y Axis',
        zaxis_title='Output')
)

fig.show()
4

0 回答 0