目前我编译为HTML,它允许我通过函数调用嵌入我的数据的csv(见下文)。当我编织PDF时,我正试图让这个功能正常工作,但是在我的生活中无法解决如何实现这一功能。有methods to embed files in Latex documents但我不知道如何将其与Rmarkdown文档联系起来并让它像我现在一样用简单的函数调用来嵌入数据。有任何想法吗?
embed_data= function(x, filename = "file.csv", label = " Get data "){
if(!isTRUE(getOption('knitr.in.progress'))){
cat('Will Embed Data When Knitting')
return('')
} else {
x <- data.frame(x)
for(col in names(x)) {
x[,col] <- str_replace_all(x[,col], '\n', ' ')
}
# Create encoded Base64 datastream
encode_data= function(x){
write.csv(x, file = "./file.csv")
enc = sprintf('data:text/csv;base64,%s', openssl::base64_encode(paste0(readLines("./file.csv"), collapse = "\n")) )
unlink("./file.csv")
return(enc)
}
# String result ready to be placed in rmarkdown
cat(' \n', paste0("<a download='", filename, "' href=", encode_data(x), ">", label, "</a>",' \n'))
}
}