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)
我正在尝试使用 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)