ggplot地图上的点用基于数据的渐变着色

时间:2017-09-18 14:11:22

标签: r ggplot2 mapping data-visualization

我试图在英国地图上绘制点,其中点的大小会根据数据而变化。

目前,我有一张地图,根据数据,这些点的大小会更大或更小。这是有帮助的,但是由于某些点彼此非常接近,所以有时候很难弄清楚,特别是如果一个大点阻挡了其他点。

因此,我想调整我所拥有的,以便在颜色渐变上区分点 - 所以对于例如从最低的白色到最高的蓝色。

以下是我的数据文件的一部分:

structure(list(V1 = c("St George's", "Sheffield", "Plymouth", 
"Exeter", "King's College London", "East Anglia"), 
Sample = c(183L, 139L, 106L, 128L, 152L, 178L), 
Total = c(417L, 342L, 350L, 520L, 659L, 875L), 
Response = c(43.9, 40.6, 30.3, 24.6, 23.1, 20.3), 
Lat = c(51.427194, 53.380941, 50.415735, 50.737137, 51.511486, 52.621921), 
Long = c(-0.174503, -1.487947, -4.110571, -3.535147, -0.115997, 1.239176)), 
.Names = c("V1", "Sample", "Total", "Response", "Lat", "Long"), 
row.names = c(NA, 6L), class = "data.frame")

一旦我加载了数据文件,我就这样做了:

UK <- map_data(map = "world", region = "UK")

ggplot() +
  geom_polygon(data = UK, aes(x = long, y = lat, group = group)) +
  geom_point(data = unidata, aes(x = Long, y = Lat, size = Response), col = "red") +
  coord_map()

我尝试更改尺寸以填充,但这会让我得到均匀大小的点,这些点都是黑色的。

感谢您的帮助。

0 个答案:

没有答案