Используйте Shiny, чтобы реагировать на изображения - PullRequest
0 голосов
/ 18 декабря 2018

Мне нужно как-то реагировать на R-изображения в системе, которая позволяет мне использовать только подмножество HTML, поэтому без фреймов.По сути, это должно быть что-то вроде `img src =" https://shinyserver.com/app/image123.jpeg" /'.

. Я думаю об использовании https://github.com/Appsilon/shiny.router,, но не уверен, будет ли оно работать.

У кого-нибудь есть предложения?

1 Ответ

0 голосов
/ 18 декабря 2018

Я не уверен, действительно ли это решает вашу проблему, но так как вы упомянули shiny.router, я думаю, пакет plumber также может быть полезен.

Это небольшой пример, который позволяет вам создаватьтег изображения с использованием функции R в качестве API.

plumber.R

library(shiny)
library(plumber)

#' Get an image tag with source from its name
#' @param imgsrc Source of the image
#' @get /
img2tag <- function(imgsrc = "") {
  url = paste0('https://shinyserver.com/app/', imgsrc)
  as.character(tags$img(src=url))
}

Затем необходимо запустить API-интерфейс сантехника, введя:

pr <- plumber::plumb("plumber.R")
pr$run(port = 7818)

И затем вы можете получить к нему доступ в браузере с помощью:

http://localhost:7818/?imgsrc=image123.jpeg

, который дает JSON-эквивалентность строки:

0   "<img src=\"https://shinyserver.com/app/image123.jpeg\"/>"

или через консоль с помощью:

curl http://localhost:7818/?imgsrc=image123.jpeg
...