ggiraph:带有超链接的工具提示?

ggiraph: tooltip with hyperlink?

我正在尝试使用 ggiraph 创建一个交互式散点图,其中的工具提示允许我导航到一个网址(与特定的选定点有关)。知道这是否真的可能以及如何去做?非常感谢任何建议!

library(tidyverse)
library(ggiraph)

my_df <- data.frame(stringsAsFactors=FALSE,
            x = c(0.5, 0.1),
            y = c(0.2, 0.9),
         link = c("bbcnews.com", "nyt.com"),
   link_name = c("bbc news", "nytimes")
)


my_plot <- my_df %>% 
  ggplot()+
  geom_point_interactive(aes(x=x,
                             y=y,
                             tooltip=paste0(link_name, 
                                            "\n",
                                            link)))
my_plot
girafe(ggobj=my_plot,
       height_svg = 5,
       width_svg = 5)

您可以通过 tooltip(写为 html)或 onclick 美学提供 link。就个人而言,我更喜欢使用 onclick,因为当您移动鼠标光标单击 link 时,工具提示几乎总是会消失。

在下面的代码中,我尝试将两者都添加,因此您可以尝试单击该点本身,或者看看您是否足够快地单击工具提示中的 link。

library(tidyverse)
library(ggiraph)

my_df <- data.frame(stringsAsFactors=FALSE,
            x = c(0.5, 0.1),
            y = c(0.2, 0.9),
         link = c("http://bbcnews.com", "http://nyt.com"),
   link_name = c("bbc news", "nytimes")
)

my_plot <- my_df %>% 
  ggplot()+
  geom_point_interactive(aes(x=x,
                             y=y,
                             tooltip=paste0("<a href='", link, "'>",link_name, 
                                            "</a>\n",
                                            link), 
onclick=paste0('window.open("', link , '")')))

girafe(ggobj=my_plot,
       height_svg = 5,
       width_svg = 5)