我正在尝试使用 R ggplot2 dplyr & ggswissmap 制作地图 我的问题如下,有些点具有完全相同的坐标( long/V1;lat/V2 ),尽管我进行了不同的尝试,但我总是只得到一个点而不是几个点的相同图形。 当然,我尝试了抖动功能,将不胜感激任何帮助或教程的链接。
library(ggswissmaps)
library(dplyr)
dd<-shp_df[[5]]
df<-ggplot() +
geom_polygon(data=dd, aes( x = long, y = lat, group = group),color="white") +
theme_white_f()
df <- ggplot() +geom_polygon( data = df.merge ,
aes(x = long, y = lat, group = group),
color="white", fill="grey92" )
pp<-df+ geom_point(data=merge_data,aes(x=V1, y=V2,colour=FB), size=3, alpha=0.8) +
theme_white_f()
pp
pp+geom_jitter()
每个区域中心的点
cnames <- aggregate(cbind(df.merge$long, df.merge$lat) ~ df.merge$V2, data=df.merge,
FUN=function(x)mean(range(x)))
cnames$Kanton<-cnames$`df.merge$V2`
merge_data<-right_join(cnames,tbl_canton_separate,by=c("Kanton"="Cantons"))
head(df.merge)
long lat order hole piece group id KTNR GRNR AREA_HA X_MIN X_MAX Y_MIN Y_MAX
1 692429 281173 1 FALSE 1 0.1 0 1 4 172895 669244 716900 223896 283343
2 692993 280860 2 FALSE 1 0.1 0 1 4 172895 669244 716900 223896 283343
3 693163 280421 3 FALSE 1 0.1 0 1 4 172895 669244 716900 223896 283343
4 693048 280201 4 FALSE 1 0.1 0 1 4 172895 669244 716900 223896 283343
5 693243 279410 5 FALSE 1 0.1 0 1 4 172895 669244 716900 223896 283343
6 693606 278826 6 FALSE 1 0.1 0 1 4 172895 669244 716900 223896 283343
X_CNTR Y_CNTR Z_MIN Z_MAX Z_AVG Z_MED V1 V2 V3
1 691800 252000 331 1290 533 504 1 ZH Zürich
2 691800 252000 331 1290 533 504 1 ZH Zürich
3 691800 252000 331 1290 533 504 1 ZH Zürich
4 691800 252000 331 1290 533 504 1 ZH Zürich
5 691800 252000 331 1290 533 504 1 ZH Zürich
6 691800 252000 331 1290 533 504 1 ZH Zürich
head(merge_data[,c(1:5,8)])
df.merge$V2 V1 V2 Kanton Numéro FB
1 AG 648725 247936 AG PGV01.002 II
2 AG 648725 247936 AG PGV01.005 I
3 AG 648725 247936 AG PGV01.044 II
4 AG 648725 247936 AG PGV01.047 II
5 AG 648725 247936 AG PGV01.071 IV
6 AG 648725 247936 AG PGV02.015 IV
答案 0 :(得分:0)
增加点的传播:是的,它有效!
df + geom_jitter(data = merge_data, aes(x=V1, y=V2, colour = FB),
size=2, width = 10000, height = 10000, alpha = 0.5) + theme_white_f()