Plotly 文本中的新行

Chr*_*rge 5 python plotly

从其他关于此的问题(尽管在 R 中)我了解到您应该能够在 Plotly 的(某些?)文本元素中使用 HTML。但是,如果我尝试在我添加到我的图中的文本中获得一个新行,它将简单地将 html 标记显示为文本而不是“解析”它。我也尝试添加 '\n' 但这只是被忽略了。

我正在使用的跟踪代码;

trace = go.Scattergl(
    x=[0.5],
    y=[4.5],
    text=['A: {} <br> B: {}\nC: {}\nD: {}'.format(a, b, c, d)],
    mode='text'
    )
Run Code Online (Sandbox Code Playgroud)

除此之外,我使用“标准”代码来生成图表;

traces = [trace]
layout = {
    'xaxis':{
        'range':[0,7],
        'showgrid': False,
    },
    'yaxis':{
        'range':[0,7],
        'showgrid': False,
    },
}
fig = dict(data=traces, layout=layout)
plot(fig)
Run Code Online (Sandbox Code Playgroud)

在这种情况下如何添加新行?

小智 14

我发现<br>在悬停文本中使用可以工作,但不能在直接放置在图形上的文本中使用。这对于我的用例来说已经足够好了,也许它也会对你有帮助?这是一个与您在问题中提供的示例类似的示例,它演示了其中的差异。悬停文本和注释中使用的字符串是相同的,但中断仅在悬停文本中注册。

import plotly.graph_objects as go

a = 1
b = 2
c = 3
d = 4

trace = go.Scattergl(
    x=[0.5],
    y=[4.5],
    text=f'A: {a} <br> B: {b}\nC: {c}\nD: {d}',
    hoverinfo='text',
    mode='markers+text'
    )

traces = [trace]
layout = {
    'xaxis':{
        'range':[0,7],
        'showgrid': False,
    },
    'yaxis':{
        'range':[0,7],
        'showgrid': False,
    },
}
fig = go.Figure(data=traces, layout=layout)
fig.show(renderer='browser')
Run Code Online (Sandbox Code Playgroud)

  • `&lt;br&gt;` 现在适用于我的文本列 (6认同)