如何阻止Plotly解析标签中的HTML,保留原始文本?
如何禁用Plotly的HTML标签解析,显示原始文本
好问题!Plotly默认会自动解析文本中的HTML标签/实体来做格式渲染,想要让文本“原样输出”,你可以试试这两种靠谱的解决方案:
方法1:HTML实体双重转义(最通用)
Plotly会把HTML实体(比如<)解析成对应的字符(<),再进一步解析HTML标签。所以要让原始文本完整显示,你需要把文本里的特殊字符做双重转义:
- 把
&替换为& - 把
<替换为< - 把
>替换为>
举个Python代码的例子:
import plotly.graph_objects as go fig = go.Figure(go.Scatter(x=[1,2,3], y=[4,5,6])) # 原始想要显示的文本:"This is my <b>sample</b> text." # 转义后传入Plotly fig.update_layout( title_text="This is my &lt;b&gt;sample&lt;/b&gt; text." ) fig.show()
这样渲染出来的标题就是你想要的原始文本,不会被解析成加粗格式。
如果你的原始文本是直接带HTML标签(比如<b>sample</b>),只需要做一次转义:
title_text="This is my <b>sample</b> text."
就能显示成<b>sample</b>而不是加粗的文字。
方法2:使用Markdown模式转义(适用于支持Markdown的属性)
Plotly的部分文本属性支持Markdown渲染,你可以用反斜杠转义特殊标签,让它们原样显示:
fig.update_layout( title_text="This is my \<b\>sample\</b\> text.", # 确保启用Markdown渲染(部分属性默认启用) title_x=0.5 )
不过这种方法的兼容性不如实体转义,建议优先用第一种方法。
内容的提问来源于stack exchange,提问作者Tomasz R
相关产品推荐
相关产品推荐

