从 ggplotly,在同一个新 window/tab 中打开所有新的超链接

from ggplotly, open all new hyperlinks in the same new window/tab

我正在使用以下示例代码,点击该点会打开 link:

data(mtcars)
mtcars$urlD <- paste0("http://google.com/search?q=", gsub(" ", "+", rownames(mtcars)))

p <- ggplot(data=mtcars, aes(x=wt, y=mpg, color=factor(carb), customdata=urlD)) + geom_point() 
pp <- ggplotly(p)
ppp <- htmlwidgets::onRender(pp, "
     function(el, x) {
       el.on('plotly_click', function(d) {
         var url = d.points[0].customdata;
         window.open(url);
       });
     }
  ")

它工作正常,但每次新点击都会打开 new window/tab。有什么办法让它使用相同的window吗? (我的意思不是带情节的window而是第一个link被打开的window)通常javascript,我会使用name参数window.open(),像这样:window.open(url, 'MyTargetWindow'); - 但它在这里没有帮助。有什么解决方法吗?

您一定是在使用 Rstudio。 window.open(url, 'MyTargetWindow') 在浏览器中有效,但在 Rstudio 中无效。如果您单击“在新 window 中显示”按钮并在浏览器中打开该图,它就会起作用。原因是 window name 在同一个浏览器中被识别,但是当你打开一个新的浏览器时(在这种情况下从 Rstudio Viewer 到实际浏览器), name 信息没有传递.我不知道解决此 cross-browser 问题的解决方案。