Bazı grafikler ggsave kullanarak kaydeder bir R betiği var. Komut satırını komut satırından çalıştırdığımda, yalnızca grafikleri değil, aynı zamanda boş bir Rplots.pdf dosyasını da kaydeder. R'nin bu gereksiz dosyayı oluşturmasını nasıl engelleyebilirim? Ben içinden kod kaynak yaparken, aynı zamandaNasıl ggsave ve Rscript kullanırken boş Rplots.pdf dosyası oluşturma R durdurmak
Rscript script.R
Rscript --vanilla script.R
chmod a+x script.R
./script.R
: komut gereksiz dosya oluşturmak çalışan
#!/usr/bin/env Rscript
# Code that creates unnecessary Rplots.pdf file
library(ggplot2)
my.data <- data.frame(x = 1:10, y = 1:10)
my.plot <- qplot(x, y, data = my.data)
ggsave('example.png', my.plot)
Tüm aşağıdaki yolları: Burada
hatayı yeniden üreten bir örnek script interaktif bir oturumda, gereksiz bir boş R Grafik Cihazı penceresi açılır. İşte#!/usr/bin/env Rscript
# Code that does NOT create unnecessary Rplots.pdf file
library(ggplot2)
my.data <- data.frame(x = 1:10, y = 1:10)
my.plot <- qplot(x, y, data = my.data)
png(file = 'example.png')
print(my.plot)
dev.off()
(etkileşimli Rscript veya koşu olsun aynıdır) benim Oturum bilgileri: Ben ggsave yerine aşağıdaki daha ayrıntılı kod kullanıyorsanız
Dahası, ben bu sorunları yok:
R version 3.0.1 (2013-05-16)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=C LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] methods stats graphics grDevices utils datasets base
other attached packages:
[1] ggplot2_0.9.3.1
loaded via a namespace (and not attached):
[1] colorspace_1.2-2 dichromat_2.0-0 digest_0.6.3 grid_3.0.1
[5] gtable_0.1.2 labeling_0.1 MASS_7.3-26 munsell_0.4
[9] plyr_1.8 proto_0.3-10 RColorBrewer_1.0-5 reshape2_1.2.2
[13] scales_0.2.3 stringr_0.6.2
Ben senin sorunu çözmek için görünür ggsave' 'bir yükseklik ve genişliğini belirtmek, ama ben neden çünkü sanırım olsaydı ben hemen ... bilmediklerini itiraf ederse Varsayılanlar, ölçülmeden önce var olması gereken "geçerli çizim penceresinin" boyutlarıdır. – joran
"ggsave" yi çalıştırdım ve "RPlots" yaratmadı.pdf', sadece 'example.pdf'. 'ggsave'' debug' modunda nispeten basittir, bunu deneyebilir ve '' device''ın hangi işlevi çağırdığını görebilirdiniz. –
Bu davranışı görüyorum ve yükseklik ve genişlik argümanlarını belirtmek, hem etkileşimli bir oturumda hem de RScript kullanarak bu sorunu çözüyor gibi görünüyor. – joran