jes*_*cha 8 python text plotly
我有一个包含长行(大约 200 个字符)的悬停文本。问题是它变成了一个贯穿整个图形的长矩形,因为它被剪切,所以不可能看到完整的文本。
我的数据在数据框中。我正在绘制 x 和 y,并在悬停文本中添加包含描述的 az 变量。
是否可以调整文本框的高度和宽度?或者我可以将文本分成几行吗?
这是我目前的代码:
fig = make_subplots(rows=2, cols=1,column_widths=[1],
subplot_titles=["A", "B"])
fig.add_trace(
go.Scatter(
x=df.varA,
y=df.varB,
hovertext = df.varC,
marker=dict(color='darkblue'),
mode = 'markers'
), row=1, col=1)
fig.add_trace(
go.Scatter(
x=df.varA,
y=df.varB,
hovertext = df.varC,
marker=dict(color='darkblue'),
mode = 'markers'
), row=2, col=1)
fig.update_layout(barmode='stack',showlegend=False, height=900, width=1000,title_text="Example")
fig.show()
Run Code Online (Sandbox Code Playgroud)
请帮我 :)
根据文档,字符串似乎支持 HTML 标记。
因此,您可以<br>在字符串中添加一些标签来换行:
label = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.<br>Sed eget arcu sit amet purus volutpat euismod sed id quam.
Run Code Online (Sandbox Code Playgroud)
由于 plotly 在 html 中读取包括标签,因此您可以将\nbreak 标签<br>插入到要在显示时换行的 df 变量的文本中:
df.varA = df.varA.str.wrap(30)
df.varA = df.varA.apply(lambda x: x.replace('\n', '<br>'))
Run Code Online (Sandbox Code Playgroud)