Каир: Почему Каир не работает в действии? - PullRequest
2 голосов
/ 03 мая 2020

Мой демонстрационный код был таким:

   p <- plot(c(1,3,4,5,6,4,3),c(1,2,3,4,5,6,7))
    myTiff <- function(p){
        tiff("E:/aaa.tiff")
        p
        dev.off()
    }
    myTiff(p)

Но он не работает (изображение было успешно сохранено, а размер не был 0 МБ, но может ли это t open), what не так с этим?

1 Ответ

1 голос
/ 03 мая 2020

Я думаю, что проблема заключается в сохранении сюжета в p. Попробуйте вместо

p <- data.frame(x=c(1,3,4,5,6,4,3), y=1:7)
myTiff <- function(p){
    tiff("E:/aaa.tiff")
    plot(p)
    dev.off()
}
myTiff(p)

. В этом случае ввод вашей функции - это точки, которые нужно построить, а не сохраненный график.

Использование ggplot2 позволяет использовать другие способы, поскольку ggplot можно сохранить:

df <- data.frame(x=c(1,3,4,5,6,4,3), y=1:7)
p  <- ggplot(df, aes(x=x, y=y)) + geom_point()

myJpeg <- function(p){ 
  ggsave("E:/test.jpg", p) 
} 
...