我想做的是将每个字符串信息只添加到每个气球中,如下面的捕获。但是没有在每个情节旁边显示它们,因为情节多的时候看起来很混乱。
我的数据框在下面,我将信息作为字符串添加到每一行。
import plotly.express as px
import numpy as np
import pandas as pd
from sklearn import datasets
from sklearn.manifold import TSNE
digits = datasets.load_digits()
X_reduced = TSNE(n_components=3, random_state=0).fit_transform(digits.data)
myinfo = ['ID' + str(i+1) for i in range(X_reduced.shape[0])]
df = pd.DataFrame(data=X_reduced, columns=columns, dtype='float')
df['info'] = myinfo ## <- This is what i want to show in a balloon.
print(df)
a b c info
0 18.150545 -1.938995 1.192057 ID1
1 -8.773806 2.475938 -10.885373 ID2
2 4.305762 5.132519 -7.347726 ID3
3 5.327038 7.438313 8.786077 ID4
4 -15.810744 -9.374986 0.310686 ID5
... ... ... ... ...
1792 1.192152 -0.850245 12.781646 ID1793
1793 14.183956 -3.544634 -1.009673 ID1794
1794 -0.907307 2.596647 -4.307703 ID1795
1795 1.608326 0.700724 9.267643 ID1796
1796 1.809730 5.428222 -1.771497 ID1797
我尝试的是将字符串info指定为px.scatter_3d()的text='info',如下代码所示。
fig = px.scatter_3d(df, x='a', y='b', z='c', color='a', size_max=6 , text='info', opacity=0.7)
fig.show()
有人知道如何在情节之外消除这些信息吗?先谢谢你。
1条答案
按热度按时间k2arahey1#
使用您的设置,您只需运行:
…或:
这将删除与标记关联的字符串,但会在hoverlabel中保留添加的信息:
这种方法可以让您保持通话畅通
px.scatter_3d(..., text='info')
就目前而言。另一种方法是直接使用
custom_value
如后期打印三维打印注解中所述