在 ggmap 和 ggplot2 中为英国绘制地图

Posted

技术标签:

【中文标题】在 ggmap 和 ggplot2 中为英国绘制地图【英文标题】:Plotting map for UK, in ggmap & ggplot2 【发布时间】:2021-03-19 05:26:02 【问题描述】:

全部,

如果

Germany = map_bounds <- c(left = 5, bottom = 47, right = 16, top = 56)

什么是英国?

英国 =

【问题讨论】:

这些看起来不像 E 度和 N 度吗? 如何将地图固定到英国,一定有比猜测坐标更简单的方法 【参考方案1】:

尝试以下任一选项:

library(maps)       
library(mapdata)    
#Option 1
map('worldHires',
    c('UK', 'Ireland', 'Isle of Man','Isle of Wight'),
    xlim=c(-11,3), ylim=c(49,60.9)) 

输出:

或者:

library(ggplot2)
library(maps)
#Data
worldmap = map_data('world')
#Option 2
ggplot() + geom_polygon(data = worldmap, 
                        aes(x = long, 
                            y = lat, 
                            group = group,
                            ),
                        fill = 'gray90', 
                        color = 'black') + 
  coord_fixed(xlim = c(-10,3), 
              ylim = c(50.3, 59))

输出:

【讨论】:

另外,如何使这个多边形的 alpha 值为 0.4? coords.map @Dan 你已经回答了自己 :) 如果这个问题有助于考虑接受它***.com/help/someone-answers 非常感谢!【参考方案2】:

感谢上面的帮助,这里是几乎完整的代码,我只需要了解哪个位以及如何将热图多边形修改为透明,它们当前阻碍了下面的地图。

图书馆(ggplot2) 图书馆(ggmap) 库(RColorBrewer)

coords.data

-英国边界 map_bounds

coords.map

coords.map

-热图图层:根据坐标的相对频率填充颜色的多边形 coords.map

-填充密度轮廓 coords.map

-添加坐标,颜色为红色并定义形状 -形状:http://sape.inf.usi.ch/quick-reference/ggplot2/shape

coords.map

coords.map

【讨论】:

【参考方案3】:

除了@Duck 的答案之外,您还可以通过在epsg.io 上搜索该国家/地区来获得任何国家/地区的 WGS84(即经度和纬度)边界。

例如,英国使用 British National Grid (EPSG 27700),因此如果您选择该投影,则会为您提供 WGS84 边界,您可以将其用于地图边界。

WGS84 bounds:
-8.82 49.79
1.92 60.94 

【讨论】:

以上是关于在 ggmap 和 ggplot2 中为英国绘制地图的主要内容,如果未能解决你的问题,请参考以下文章

在 ggplot/ggmap 中绘制多个数据框并创建统一图例的问题

使用 ggmap、geom_point 和循环映射 long-lat 数据集的最近邻居

choroplethr、ggmap 或 ggplot2 中的道路和半径圆

图例标题对齐 (ggmap)

查找比例 x 或 y 连续的限制或避免删除 ggplot2 和 ggmap 中的行

在 ggplot2 中为时间序列数据绘制具有置信区间的平均值