我正在开发一个Shiny应用程序,它从API获取信息并在表格中显示该信息。这是我现在的代码:
output$ItemInfo <- renderTable({
base <- "http://services.runescape.com/m=itemdb_rs/api/catalogue/detail.json?item="
item.id <- item.codes %>% filter(name == input$item)
url <- paste0(base, item.id$id)
item.data <- fromJSON(url)
table.data <- runescape.data %>% filter(ItemName == input$item)
image.url <- item.data[[1]]$icon_large[1]
Info <- c('Description', 'Image', 'Current Price (GP)', '% Change in Last 30 Days', '% Change in Last 90 Days', '% Change in Last 180 Days', 'Members Only', 'Low Alch', 'High Alch')
Data <- c(item.data[[1]]$description[[1]], paste0('<img src="', image.url, '"></img>'), item.data[[1]]$current$price, item.data[[1]]$day30$change, item.data[[1]]$day90$change, item.data[[1]]$day180$change, table.data$MembersOnly[[1]], table.data$LowAlch[[1]],
table.data$HighAlch[[1]])
#Display Both columns
return(data.frame(Info, Data))
})
我得到了正确的image.url
,我无法弄清楚如何渲染它。目前,这只会显示<img src="http://services.runescape.com/m=itemdb_rs/1480946739712_obj_big.gif?id=560"></img>
之类的代码,其中应包含实际图像。
我还尝试使用此代码替代paste0
行Data
上的img(src='http://services.runescape.com/m=itemdb_rs/1480946739712_obj_big.gif?id=560', width = '300px', height = '100px')
位,但由于某种原因,这打破了整个表格。
如何渲染我从此网址获得的图片?