Pergunta

Estou usando a biblioteca ggmap em R para produzir um mapa da área de Atlanta.Ao executar o código, consigo plotar pontos no mapa, bem como em outras camadas, mas não consigo imprimir o mapa em nenhum dispositivo gráfico que não seja PDF.Suspeito de um problema de configuração, pois consigo usar esse código em um computador diferente sem problemas, mas duas outras máquinas simplesmente exibem gráficos em branco.

Aqui está uma versão reduzida do código.Presumo que meus gráficos em branco não serão reproduzíveis, mas espero obter alguma orientação sobre onde pode estar o problema de configuração.

library('ggplot2')
library('ggmap')
library('mapproj')

# ggmapTemp.png gets saved to the working directory correctly
atlanta <- get_map(location=c(lon=-84.26039,
                              lat=33.8751),
                   zoom=9,maptype='roadmap')

atlantaMap <- ggmap(atlanta, extent = 'device', legend = 'topleft')

# this produces a blank plot from both RStudio as well as R
atlantaMap

# this produces the actual map correctly
pdf("plot.pdf")
atlantaMap
dev.off()

# this produces a png file with only a white background
png("plot.png")
atlantaMap
dev.off()

Informações da sessão:

R version 2.15.3 (2013-03-01)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] mapproj_1.2-1    ggmap_2.3        ggplot2_0.9.3.1  maps_2.3-6       maptools_0.8-27 
 [6] sp_1.0-14        car_2.0-19       reshape2_1.2.2   plyr_1.8         Revobase_6.2.0  
[11] RevoMods_6.2.0   RevoScaleR_6.2.0 lattice_0.20-13  rpart_4.1-0     

loaded via a namespace (and not attached):
 [1] codetools_0.2-8     colorspace_1.2-4    dichromat_2.0-0     digest_0.6.3        foreach_1.4.0      
 [6] foreign_0.8-52      grid_2.15.3         gtable_0.1.2        iterators_1.0.6     labeling_0.2       
[11] MASS_7.3-23         munsell_0.4.2       nnet_7.3-5          png_0.1-6           proto_0.3-10       
[16] RColorBrewer_1.0-5  RgoogleMaps_1.2.0.5 rjson_0.2.13        RJSONIO_1.0-3       scales_0.2.3       
[21] stringr_0.6.2       tools_2.15.3   

E capacidades:

jpeg      png     tiff    tcltk      X11     aqua http/ftp  sockets   libxml     fifo   cledit 
TRUE     TRUE     TRUE     TRUE    FALSE    FALSE     TRUE     TRUE     TRUE    FALSE     TRUE 
iconv      NLS  profmem    cairo 
TRUE     TRUE     TRUE     TRUE 
Foi útil?

Solução

O problema tem a ver com o servidor limitar a profundidade de bits que passa pela conexão.Oráculo documenta o problema e a solução no site deles:

Em uma sessão de Área de Trabalho Remota, todas as variáveis ​​de ambiente, incluindo variáveis ​​de exibição que determinam a Profundidade de Cores, são determinadas pelas configurações de conexão RCP-Tcp.Por exemplo, os usuários podem reduzir a profundidade de cores ao conectar-se em uma conexão lenta.As diferentes configurações são 15 bits, 16 bits, 24 bits ou 32 bits por pixel.Para aumentar a profundidade de cores da Área de Trabalho Remota:

No servidor Windows, inicie a Configuração do Host de Sessão de Área de Trabalho Remota no menu Acessórios.Em Conexões, clique com o botão direito em RDP-Tcp e selecione Propriedades.Na guia Configurações do cliente, desmarque LimitMaximum Color Depth ou defina-o como 32 bits por pixel.

Ao desmarcar a caixa de seleção "Limitar profundidade máxima de cores" e reconectar-se ao servidor, os planos de fundo do mapa raster agora aparecem conforme o esperado.Observe que eles também fornecem a opção 2, que é a saída para um dispositivo alternativo.

Outras dicas

Parece que Jrshrenk não atualizou R e os pacotes há algum tempo. Embora, em teoria, suas versões de R, GGMAP, PNG e GGPLOT2 pareçam suficientes:

    Package: ggmap
    Version: 2.4
    Depends: R (>= 2.14.0), ggplot2 (>= 0.9.2)
    Imports: proto, scales, RgoogleMaps, png, plyr, reshape2, grid, rjson,
            mapproj, jpeg, geosphere, digest
    Suggests: MASS, stringr
        License: GPL-2
        NeedsCompilation: no

    Package: png
    Version: 0.1-7
    Depends: R (>= 2.9.0)
    License: GPL-2 | GPL-3
    NeedsCompilation: yes

Eu tentaria atualizar R e os pacotes para ver se ele resolve o problema:

#Save your current packages but not the base ones:
savepackages <- rownames(installed.packages(priority='NA')) 
write(savepackages, file="listpackages.txt")

#Check for Updates of R
library(installr)
check.for.updates.R(notify_user = TRUE, use_GUI = TRUE,
                    page_with_download_url = "http://cran.rstudio.com/bin/windows/base/",
                    pat = "R-[0-9.]+-win")

#Download and Install New Version
install.R(page_with_download_url = "http://cran.rstudio.com/bin/windows/base/",
          pat = "R-[0-9.]+-win.exe", to_checkMD5sums = TRUE,
          keep_install_file = TRUE, download_dir = tempdir(), silent = FALSE)

#Then reinstall packages 
pkg.ls <- read.table("listpackages.txt")
install.packages(pkg.ls)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top