首页 > 解决方案 > R将字符串转换为图像

问题描述

我有一个数据框 df <- as.dataframe(matrix(nrow = 100, ncol = 1)),其中 df$text 有一组文本字符串。

我想将每个 df$text 值转换为图像,并将其导出为图像。

我尝试将每个 df$text[i] 导出为 .txt 文件,然后导出为 .pdf,然后导出为图像,但在这种情况下,我得到一个 A4 尺寸的图像,其中包含文本字符串。我想要的是只有一个图像,它将被文本字符串 100% 覆盖。

是否有任何相关功能可以将文本字符串直接转换为图像?

标签: rimageconverters

解决方案


您可以使用基础 R 绘图。

例如,您可以创建一个函数textPlot来绘制您的字符串并保存它。然后您可以为数据集的每一行调用它:

textPlot <- function(plotname, string){
  par(mar=c(0,0,0,0))
  pdf(paste0(plotname, ".pdf"))
  plot(c(0, 1), c(0, 1), ann = F, bty = 'n', type = 'n', xaxt = 'n', yaxt = 'n')
  text(x = 0.5, y = 0.5, paste(string), cex = 4, col = "black", family="serif", font=2, adj=0.5)
  dev.off()
}

如果您想更深入地了解正在发生的事情,请查看R - Plot Only Text

然后,调用textPlot('mytext', 'Hello World')将图像保存mytext.pdf在工作目录中:输出带文字的图片


推荐阅读