我有一个菲律宾的shapefile,其中包含每个省的所有正确标签。在删除了我将不使用的一些省份之后,将数据聚合到单个数据框中,然后将协变量附加到shapefile上,我遇到了麻烦。使用tmap创建一些地图,省份被错误贴标签,因此将不同的数据应用于不同的省份。我正在使用这些数据进行时空分析,因此重要的是省份位于正确的位置。
我尝试过回退一些shapefile,但似乎不起作用。
#reading in shapefile
shp <- readOGR(".","province.csv")
#removing provinces not in data from shapefile
myshp82=shp
shp@data$prov=as.character(shp@data$prov)
ind=shp@data$prov%in% mydata$prov
shp.subset=shp[ind,]
#attaching covariates to shapefile for plotting, myagg is my data frame.
#The shape files are divided in four different time periods.
myagg_time1=myagg[myagg$period==1,]
myagg_time2=myagg[myagg$period==2,]
myagg_time3=myagg[myagg$period==3,]
myagg_time4=myagg[myagg$period==4,]
myshptime1=myshptime2=myshptime3=myshptime4=shp
myshptime1@data=merge(myshptime1@data, myagg_time1, by='prov',all.x=TRUE)
myshptime2@data=merge(myshptime2@data, myagg_time2, by='prov',all.x=TRUE)
myshptime3@data=merge(myshptime3@data, myagg_time3, by='prov',all.x=TRUE)
myshptime4@data=merge(myshptime4@data, myagg_time4, by='prov',all.x=TRUE)
#desc maps. Here's the code I've been using for one of the maps.
Per1= tm_shape(myshptime1)+
tm_polygons(c('total_incomeMed','IRA_depMean','pov'), title=c('Total Income', 'IRA', 'Poverty (%)'))+
tm_facets(sync = TRUE, ncol=3)
#sample data from my data sheet "myagg". First column is provinces.
period counts total_income_MED IRA_depMean
Agusan del Norte.1 1 2 119.33052 0.8939136
Agusan del Norte.2 2 0 280.96928 0.8939136
Agusan del Norte.3 3 1 368.30082 0.8939136
Agusan del Norte.4 4 0 368.30082 0.8950379
Aklan.5 1 0 129.63132 0.8716863
Aklan.6 2 3 282.95535 0.8716863
Aklan.7 3 3 460.29969 0.8716863
Aklan.8 4 0 460.29969 0.8437920
Albay.9 1 0 280.12221 0.8696165
Albay.10 2 3 453.05098 0.8696165
Albay.11 3 1 720.40732 0.8696165
Albay.12 4 0 720.40732 0.8254676
基本上,上面的tmap代码针对每个不同的协变量(“ total_incomeMed”,“ IRA_depMean”,“ pov”)在此时间段并排创建了三个地图。发生这种情况,但是省份标签错误,数据与省份名称相关。我只需要正确标记的省份!
对不起,如果这没有道理。很高兴在需要时澄清更多信息。