用标签绘制空间坐标

时间:2013-01-03 21:19:23

标签: r plot ggplot2 spatial

我是R的新手。我有很多坐标,我想在R中以适当的方式绘制它们,这也是一个标签。此外,轴应呈现纬度和长度。我尝试了ggplot但是我无法将数据放到代码中。

   id      lon      lat
1   2 7.173500 45.86880
2   3 7.172540 45.86887
3   4 7.171636 45.86924
4   5 7.180180 45.87158
5   6 7.178070 45.87014
6   7 7.177229 45.86923
7   8 7.175240 45.86808
8   9 7.181409 45.87177
9  10 7.179299 45.87020
10 11 7.178359 45.87070
11 12 7.175189 45.86974
12 13 7.179379 45.87081
13 14 7.175509 45.86932
14 15 7.176839 45.86939
15 17 7.180990 45.87262
16 18 7.180150 45.87248
17 19 7.181220 45.87355
18 20 7.174910 45.86922
19 25 7.154970 45.87058
20 28 7.153399 45.86954
21 29 7.152649 45.86992
22 31 7.154419 45.87004
23 32 7.156099 45.86983

1 个答案:

答案 0 :(得分:5)

为此,请使用geom_text几何图形

ggplot(aes(x = lon, y = lat), data = df) + geom_text(aes(label = id))

这会在id列中显示列lonlat指定的位置上的文字。数据存储在data.frame df中。

或使用:

ggplot(aes(x = lon, y = lat), data = df) + geom_text(aes(label = id)) + 
    geom_point()

如果要添加点和标签。使用hjust的{​​{1}}和vjust参数更改标签相对于该点的方向。此外,使用geom_text美学中的var参数,根据列color为每个点指定颜色:

geom_point

请注意ggplot(aes(x = lon, y = lat), data = df) + geom_text(aes(label = id)) + geom_point(aes(color = var)) 无法处理ggplot2包提供的Spatial类。使用sp将点(SpatialPoints)和网格集(SpatialPixels / SpatialGrid)转换为data.frame。此外,使用as.data.frame将多边形数据集(SpatialPolygons)转换为fortify