小编Mor*_*ori的帖子

有没有办法用 R 将 html 代码嵌入到工具提示中?

我想将 html 代码嵌入到绘图的悬停工具提示中。这是一个工作示例:

plotly::plot_ly(
  type = "pie",
  labels = "A",
  hovertext = '<i>text in italics</i>', # Renders text in italics
  hoverinfo = "text"
)
Run Code Online (Sandbox Code Playgroud)

通过将文本渲染为斜体,这个 reprex 似乎工作得非常好。然而,更复杂的html代码似乎无法渲染为html,而是渲染为纯文本。就我而言,我想要的是将图像嵌入到工具提示中,如下所示:

plotly::plot_ly(
  type = "pie",
  labels = "A",
  hovertext = '<img src="https://cran.r-project.org/Rlogo.svg">', # Does not render as html
  hoverinfo = "text"
)
Run Code Online (Sandbox Code Playgroud)

我尝试使用 for hovertext(或 for text,就此而言两者的工作原理相同)的其他一些值:

以纯文本形式呈现的值:

'<div><i>text in italics</i></div>'
'<div><img src="https://cran.r-project.org/Rlogo.svg"></div>',
'<img src="https://cran.r-project.org/Rlogo.svg">',
htmltools::HTML('<img src="https://cran.r-project.org/Rlogo.svg">'),
htmltools::HTML('<div><img src="https://cran.r-project.org/Rlogo.svg"></div>'),
Run Code Online (Sandbox Code Playgroud)

可以肯定的是,第一个呈现为“<div>斜体文本</div>”(斜体可以)

使工具提示根本不起作用的值:

htmltools::img(src="https://cran.r-project.org/Rlogo.svg")
htmltools::div(htmltools::img(src="https://cran.r-project.org/Rlogo.svg"))
htmltools::div('<img src="https://cran.r-project.org/Rlogo.svg">')
Run Code Online (Sandbox Code Playgroud)

相关帖子和可能的解决方案:

R 中使用 JavaScript 的悬停事件 …

r tooltip plotly

8
推荐指数
1
解决办法
1831
查看次数

标签 统计

plotly ×1

r ×1

tooltip ×1