如何在 R 中使用填充条形图控制 ggplotly 工具提示中的 "count"

How to control "count" in tooltip for ggplotly with filled bar plot in R

提前感谢您提供的任何建议!我希望能够在工具提示中重新标记 "count" 以获取面向 public 的交互式绘图。

这是一个可重现的例子:

library(plotly)
df <- data.frame(cat=c(rep("A", 5), rep("B", 7), rep("C", 10)),
                 time=c(rep("Time1", 3), rep("Time2", 13), rep("Time3", 6)))
ggplotly(ggplot(df, aes(x=time, fill=cat)) + geom_bar(position = "fill"))

我知道我可以使用 text=paste("Category:", cat, "Time:" time) 控制工具提示中的时间和类别标签,但似乎无法弄清楚如何为计数赋予更美观的标题。

感谢您的宝贵时间!

也许有更简单的解决方案,但您可以这样做:

library(plotly)
df <- data.frame(cat=c(rep("A", 5), rep("B", 7), rep("C", 10)),
                 time=c(rep("Time1", 3), rep("Time2", 13), rep("Time3", 6)))
gg <- ggplotly(ggplot(df, aes(x=time, fill=cat)) + geom_bar(position = "fill"))
ggg <- plotly_build(gg)
for(i in 1:length(ggg$x$data)){
  text <- ggg$x$data[[i]]$text
  text <- gsub("count:", "Count:", text)
  text <- gsub("time:", "Time:", text)
  text <- gsub("cat:", "Cat:", text)
  ggg$x$data[[i]]$text <- text
}
ggg