9

我有以下代码:

library(ggmap) 
ggmap(get_map(location=c(lon = 5.218922, lat = 52.342366), zoom =14))

我的帐户应该可以正常工作,但我只得到一个标准的 ggplot2 图像(灰色背景等),具有正确的轴,但没有显示地图: 在此处输入图像描述

当我查看我的工作目录时,我确实找到了一个名为“ggmapTemp”的文件,其中包含正确的地图。但是ggplot2没有显示地图。

我与 RStudio 合作,并且在我的工作电脑上拥有有限的权利。这可能是地图显示不正确的原因吗?我的 RStudio 版本是 0.96.316,R 是 R-2.15.1。

> sessionInfo()
 R version 2.15.1 (2012-06-22)
 Platform: x86_64-pc-mingw32/x64 (64-bit)

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

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

 other attached packages:
 [1] ggmap_2.1     ggplot2_0.9.1

 loaded via a namespace (and not attached):
 [1] colorspace_1.1-1   dichromat_1.2-4    digest_0.5.2       grid_2.15.1       
 [5] labeling_0.1       MASS_7.3-18        memoise_0.1        munsell_0.3       
 [9] plyr_1.7.1         png_0.1-4          proto_0.3-9.2      RColorBrewer_1.0-5
 [13] reshape2_1.2.1     RgoogleMaps_1.2.0  rjson_0.2.9        scales_0.2.1      
 [17] stringr_0.6        tools_2.15.1   

更新: 回答 1 后我的 sessionInfo():

sessionInfo()

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

 other attached packages:
 [1] mapproj_1.1-8.3 maps_2.2-6      ggmap_2.1       ggplot2_0.9.1  

 loaded via a namespace (and not attached):
 [1] colorspace_1.1-1    dichromat_1.2-4     digest_0.5.2        grid_2.15.1        
 [5] labeling_0.1        MASS_7.3-20         memoise_0.1         munsell_0.3        
 [9] plyr_1.7.1          png_0.1-4           proto_0.3-9.2       RColorBrewer_1.0-5 
 [13] reshape2_1.2.1      RgoogleMaps_1.2.0.2 rjson_0.2.9         scales_0.2.1       
 [17] stringr_0.6.1       tools_2.15.1  

按照要求:

capabilities()
jpeg      png     tiff    tcltk      X11     aqua http/ftp  sockets   libxml     fifo 
TRUE     TRUE     TRUE     TRUE    FALSE    FALSE     TRUE     TRUE     TRUE    FALSE 
cledit    iconv      NLS  profmem    cairo 
TRUE     TRUE     TRUE     TRUE     TRUE 
4

5 回答 5

7

在我的机器上,附加包的列表是:

other attached packages:
[1] mapproj_1.1-8.3 maps_2.2-6      ggmap_2.1       ggplot2_0.9.1  

这意味着您可能需要mapproj以及maps运行您的代码,因为这些是ggplot用于启用正确地图投影的建议包。

尝试:

install.packages(c("mapproj", "maps"))

然后重新运行您的代码。

于 2012-08-28T10:56:24.680 回答
1

我有这个错误,但现在我升级到最新版本的 ggmap (V2.3) 解决了

于 2013-06-20T05:27:51.717 回答
0

我有同样的问题。重新安装 ggmap 解决了这个问题。

于 2014-07-02T02:06:51.113 回答
0

在我的情况下,解决方案是图形本身。有些东西将我的颜色深度更改为 16 位,因此更改为 32 位解决了问题。

于 2017-02-04T23:43:29.503 回答
-2

因此,如果您像我一样是 RStudio 用户,您必须记住 .R 中的代码与从 R 命令行运行代码的行为略有不同。下面的代码取自Max Marchi 的 R 博客,如果从命令行执行,则可以完美运行。

library(ggmap)
library(mapproj)
map <- get_map(location = 'England', zoom = 7)
ggmap(map)

但是,使用上面相同的代码并将其放在 RStudio 中的 .R 中,结果将是一个空白窗口,其中预期会出现地图。要解决此问题,请像下面的代码一样放置ggmap(map)在里面。print()

library(ggmap)
library(mapproj)
map <- get_map(location = 'England', zoom = 7)
print(ggmap(map))

上面的代码应该在绘图窗口中生成一张英格兰地图。至少它对我有用。

我对此的解释可能是不正确的,所以不要强迫我这样做。由于 RStudio 在 R 之上运行,因此您需要明确告诉 RStudio 某些命令是行命令并且需要这样处理。通过将 line 命令放在 中print(),RStudio 知道在 R 的命令行中执行该命令。

我欢迎评论和更好地解释正在发生的事情。

于 2013-12-26T07:55:56.440 回答