如何在 R 中将多个绘图分页到单独的 jpeg 文件中?

发布于 2024-11-10 13:57:44 字数 377 浏览 3 评论 0原文

我想使用 R 中的文件名模式(例如,对于 JPEG)file.%03d.jpg 在单独的位图文件中绘制多个绘图。我尝试使用类似的东西:

somevar <- 1
jpg(paste(sep='',filename,'.%03d.jpg'))
while(somevar <= n)
{
  plot(data[somevar])
  dev.new()
  somevar <- somevar + 1
}
dev.off()

但它创建了一个.jpg 文件和几个 Rplotnnn.pdf 文件。如何将默认设备更改为 jpg 并使用自定义文件名模式?

I'd like to plot multiple plots in separate bitmap files using the file name pattern (for example, for JPEG) file.%03d.jpg in R. I tried using something like:

somevar <- 1
jpg(paste(sep='',filename,'.%03d.jpg'))
while(somevar <= n)
{
  plot(data[somevar])
  dev.new()
  somevar <- somevar + 1
}
dev.off()

but it creates one .jpg file and several Rplotnnn.pdf files. How can I change the default device to jpg, and use the custom file name pattern?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

冰之心 2024-11-17 13:57:44

我认为这应该可行

somevar <- 1
while(somevar <= n) {
  jpg(sprintf("%s%03.jpg", filename, somevar))
  plot(data[somevar])
  dev.off()
  somevar <- somevar + 1
}

绘图从设备打开(此处 jpeg(...))到 dev.off()。您可以控制文件名(我将 paste() 的使用更正为 sprintf())和循环。

I think this should work

somevar <- 1
while(somevar <= n) {
  jpg(sprintf("%s%03.jpg", filename, somevar))
  plot(data[somevar])
  dev.off()
  somevar <- somevar + 1
}

Plotting goes from device opening (here jpeg(...)) to dev.off(). You control the filename (where I corrected your use of paste() to sprintf()) and the loop.

白首有我共你 2024-11-17 13:57:44

如果从代码中删除 dev.new() 会发生什么?只要您继续写入 jpg 设备,jpg 函数/设备就应该按照您的模式生成多个文件(device.new 调用每次都会启动一个新设备,因此会生成 pdf 文件)。

What happens if you remove the dev.new() from your code? The jpg function/device should generate the multiple files following your pattern as long as you keep writing to the jpg device (the device.new call starts a new device each time, hence the pdf files).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文