Показать увеличенное изображение, когда мышь находится над точкой данных R - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь построить точечную диаграмму, чтобы при наведении курсора мыши на одну из точек появлялось изображение, соответствующее URL-адресу в данных.

Возможно ли это в R?кажется, это возможно в Python ...

спасибо,

1 Ответ

0 голосов
/ 31 января 2019

Вот решение с использованием пакета Highchater :

library(highcharter)

df <- data.frame(x = c(1, 2, 3, 4),
                 y = rep(0, 4),
                 package = c("dplyr", "shiny", "purrr", "stringr"),
                 urlimage = c("https://github.com/rstudio/hex-stickers/raw/master/PNG/dplyr.png",
                              "https://github.com/rstudio/hex-stickers/raw/master/PNG/shiny.png",
                              "https://github.com/rstudio/hex-stickers/raw/master/PNG/purrr.png",
                              "https://github.com/rstudio/hex-stickers/raw/master/PNG/stringr.png"))

hover_info <- tags$tr(
  tags$th("Package"),
  tags$td(paste0("{point.package}")),
  tags$img(src = "{point.urlimage}", width = "125px", height = "125px"))  %>%
  as.character()

highchart() %>%
  hc_add_series(data = df, 
                mapping = hcaes(x = x, y = y), 
                type = "scatter",
                marker = list(radius = 5, symbol = "circle")) %>%
  hc_tooltip(
    useHTML = TRUE,
    headerFormat = "<table>",
    pointFormat = hover_info,
    footerFormat = "</table>"
  )

Вывод:

enter image description here

...