繁体   English   中英

Plotly 3D 绘图注释

[英]Plotly 3D plot annotations

我正在尝试生成一个随机的 3D 散点图,其中每个点都有一个标签。 如何添加这些标签? 我想将它们添加到黄色框中。

在此处输入图片说明

由于您特别询问如何

将它们添加到黄色框中

你并不是真的在问如何注释 3D 图表,否则你可以用3D 注释来做,而是真正问如何自定义悬停信息。 如果您愿意使用plotly.express ,您可以在px.scatter_3D()使用custom_data来包含有关未显示在散点图中的第四个变量的信息:

fig = px.scatter_3d(df, x='sepal_length', y='sepal_width', z='petal_width',
                        color='petal_length', size='petal_length', size_max=18,
                        symbol='species', opacity=0.7,
                        custom_data = ['category']
                   )

temp1 = fig.data[0].hovertemplate
fig.update_traces(hovertemplate = temp1 + '<br>' + "Category: %{customdata[0]}")

在此处输入图片说明

完整代码:

import plotly.express as px
df = px.data.iris()
category = {'setosa':'flower', 'versicolor': 'vegetable', 'virginica': 'not a flower'}
df['category'] = df['species'].map(category)
fig = px.scatter_3d(df, x='sepal_length', y='sepal_width', z='petal_width',
                        color='petal_length', size='petal_length', size_max=18,
                        symbol='species', opacity=0.7,
                        custom_data = ['category']
                   )

temp1 = fig.data[0].hovertemplate
fig.update_traces(hovertemplate = temp1 + '<br>' + "Category: %{customdata[0]}")

fig.update_layout(margin=dict(l=0, r=0, b=0, t=0))
fig.show()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM