尝试将美学text 放在geom_point 的美学规范内。它应该让您自定义工具提示。尽管产生了警告“警告:忽略未知美学:文本”,但它会创建所需的工具提示。在 plotly 官方页面中检查另一个example,使用text 内geom_point 的美学。
df<-data.frame(replicate(2, sample(2000, size = 29, replace = TRUE)))
p <- ggplot(df, aes(x = X1, y = X2 * 1000)) +
geom_point(aes(text = paste0("X1=", X1, " X2=", X2, " Whatever needed"))) +
geom_smooth()
ggplotly(p, tooltip = "text")
编辑:geom_smooth 的工具提示
如果我们想显示 geom_smooth 的工具提示,我们需要一种不同的方法。我们需要 style() 函数来修改 plotly 对象中的跟踪属性值。
set.seed(1)
df <- data.frame(replicate(2, sample(2000, size = 29, replace = TRUE)))
p <- ggplot(df, aes(x = X1, y = X2 * 1000))
w <- ggplotly(p + geom_point() + geom_smooth())
text_1 <- paste0("Text geom_point:", "<br />", "X1=", w$x$data[[1]]$x, "<br />", "X2=", w$x$data[[1]]$y)
text_2 <- paste0("Text geom_smooth:", "<br />" , w$x$data[[2]]$text)
w %>%
style(text= text_1, traces = 1) %>%
style(text = text_2, traces = 2)