在 R 中将 PNG 文件旋转 90 度的最简单方法

easiest way to rotate a PNG file 90 degrees within R

在我的计算机上以编程方式打开 PNG 文件,将其旋转 90 度,然后将其另存为另一个 PNG 文件的最轻松的方法是什么 - 既不会降低质量也不会发生其他变化?这是 Microsoft Paint 中的五秒钟任务,但所有绘图、光栅、图像、设备对相关 SO 问题的回答让我对最简单的方法感到困惑吗?谢谢

试试包 magick :

library(magick)
newlogo <- image_read("https://www.r-project.org/logo/Rlogo.png")
newlogo <- image_scale(newlogo, "400x400") # logo is too big

# rotate
image_rotate(newlogo, 90)

# save    
image_rotate(newlogo, 45) %>% image_write("newlogoRotated.png")

我认为这是最简单的方法!

也可以使用 Bioconductor 包 EBImage,如下例所示。

library(EBImage)

# open
img <- readImage("https://www.r-project.org/logo/Rlogo.png")

# rotate
img <- rotate(img, 90)

# save    
writeImage(img, "Rlogo.png")