【发布时间】:2014-01-01 17:42:17
【问题描述】:
如果图像存储在我的机器上,我似乎无法在表格中显示图像。如果图像由 URL 指定,我可以让它工作,但我不知道有任何简单的方法来“提供”图像,以便可以通过 URL 找到它,而不是仅使用图像文件名并放置文件在与 ui.R 和 server.R 相同的目录中(我也尝试将图像放在 R 的主目录中)。 我检查了输出的 HTML,它似乎与成功显示存储在本地计算机上的图像的 HTML 文档中的相同。事实上,如果我将来自闪亮的输出 HTML 复制并保存为静态页面,图像在同一个目录中,然后在我的浏览器中打开它,图像就会显示。
我正在使用的 server.R 和 ui.R 脚本粘贴在下面。
有没有人知道一个好的解决方法或其他解决方案?
感谢您的帮助。
server.R 脚本:
#server.R
require(shiny)
shinyServer(function(input, output){
output$mytable <- renderTable({
dat <- data.frame(
country = c('USA', 'China','Working directory'),
flag = c('<img src="test.png" height="52"></img>',
'<img src="http://upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Flag_of_the_People%27s_Republic_of_China.svg/200px-Flag_of_the_People%27s_Republic_of_China.svg.png" height="52"></img>',
getwd())
)
dat
}, sanitize.text.function = function(x) x)
})
ui.R 脚本:
require(shiny)
shinyUI(
tableOutput('mytable')
)
【问题讨论】:
-
什么是“数据表”?你的意思是问一个关于
data.table使用同名包中的函数创建的问题吗? -
或者你说的是
renderTable函数的输出? -
@DWin 感谢您的理解——我的意思是引用
renderTable函数的输出。 -
如果你把一个图片
img1.png放到www/img/img1.png,你可以在server.R引用它为<img src=img/img1.png></img> -
@Ramnath 谢谢,解决得很好!你能把你的评论写成“答案”吗?我想把功劳给你。