Почему мой график растра в R размывается в сохраненном файле? - PullRequest
2 голосов
/ 02 апреля 2020

Я надеюсь экспортировать карту с растром, нанесенным на нее в виде .pdf или какого-либо другого векторного файла. По какой-то причине, когда я сохраняю его в формате .pdf или .ps, растр получается размытым / размытым / размытым и непригодным для использования. Любые советы по исправлению этого? Файл .png сохраняется с нужным разрешением, но не может быть послойно изменен при последующей обработке.

library(maps)
library(raster)

ra<-raster(nrows=40,ncols=35,xmn=-110,xmx=-75,ymn=7,ymx=47)
ra2 <- rasterize(cbind(runif(1000,min=-109,max=-76),runif(1000,min=8,max=46)), ra,fun=function(x,...)log10(length(x)))
pal <- colorRampPalette(c("grey90","grey40"))
map(database="world",regions=c("US","Mexico","El Salvador","Honduras","Costa Rica","Guatemala","Belize","Nicaragua","Panama"),myborder=0.0000001,xlim=c(-110,-75),ylim=c(0,50))
plot(ra2,add=T,col=pal(7))

Вот снимок экрана сохраненного файла .pdf
Вот скриншот окна Quartz с желаемым разрешением

Ответы [ 2 ]

1 голос
/ 02 апреля 2020

Вы можете использовать следующий код для сохранения изображения с высоким разрешением в виде файла PDF

pdf(file = "My Plot.pdf",   
    width = 14, # The width of the plot in inches
    height = 8.5) # The height of the plot in inches

pal <- colorRampPalette(c("grey90","grey40"))
map(database="world",regions=c("US","Mexico","El Salvador","Honduras","Costa Rica","Guatemala","Belize","Nicaragua","Panama"),myborder=0.0000001,xlim=c(-110,-75),ylim=c(0,50))
plot(ra2,add=T,col=pal(7))

#Run dev.off() to create the file!
dev.off()
0 голосов
/ 08 апреля 2020

Я только что обнаружил, что добавление 'useRaster = FALSE' к функции plot () исправляет это.

...