我想创建一个轮廓,然后通过多边形剪切轮廓,并仅显示多边形内的轮廓。
我想知道如何给轮廓添加标签并控制轮廓间隔。
如果我的问题不清楚,请告诉我。
谢谢。
Jdbaba
可以在这里找到Shapefile数据
可以在这里找到Csv文件
我使用的代码如下:
library("ggplot2")
library("rgdal")
library("gpclib")
library("maptools")
require(sp)
age2100 <- read.csv("temp.csv",header=TRUE, sep=",")
shape.dir <- "C:/Users/jdbaba/Documents/R working folder/shape" # use your directory name here
lon.shape <- readOGR(shape.dir, layer = "Export_Output_4")
str(lon.shape)
lon.df <- fortify(lon.shape, region = "Id")
p <- ggplot(lon.df, aes(x = long, y = lat, group = group)) +
geom_polygon(colour = "black", fill = "grey80", size = 1) +
theme()
p <- p + geom_point(data=age2100,aes(x=age2100$x,y=age2100$y,group="z"),size=0.1)
p <- p + geom_density2d(colour="red")
p
这里,我创建了地图、点和轮廓。我不知道我使用的代码是否为变量z创建了轮廓。如果不正确,有人能建议我吗?
我得到的示例输出如下:
现在,我想要剪裁多边形内的轮廓,并隐藏多边形外部的轮廓部分。我想知道如何给轮廓添加标签并控制轮廓间隔。
如果我的问题不清楚,请告诉我。
谢谢。
Jdbaba
gpclibPermit()
一次。 - agstudyage2100
数据框中的'z'值。等高线图仅基于位置绘制,它使用MASS包中的kde2d函数计算的二维核平滑。如果你想要生成z值的平滑地图,那么你需要研究地理统计学,并且将等高线剪裁到一个多边形现在已经不是你面临的最小问题了。 - Spacedman