小编Mic*_*hał的帖子

在ggmap中添加一个圆圈

我们假设我使用ggmap包生成伦敦地图:

library(ggmap)
library(mapproj)

map <- get_map(location = "London", zoom = 11, maptype = "satellite")

p <- ggmap(map)+ 
     theme(legend.position = "none") 

print(p)
Run Code Online (Sandbox Code Playgroud)

现在我想在这个图中添加一个带有一些中心坐标的圆(比方说:lon = -0.1,lat = 52.23)和半径,例如以公里为单位.我尝试使用类似问题的解决方案(用ggplot2绘制一个圆圈),你可以在这里添加一个这样的语句:

p <- p + annotate("path",
                  x = xc+r*cos(seq(0,2*pi,length.out=100)),
                  y = yc+r*sin(seq(0,2*pi,length.out=100)))
Run Code Online (Sandbox Code Playgroud)

它有效,但由于规模不同,圆圈实际上不是圆形.是否可以正确绘制它?任何帮助,将不胜感激!

编辑:我找到了使用不同包的解决方案(https://gis.stackexchange.com/questions/119736/ggmap-create-circle-symbol-where-radius-represents-distance-miles-or-km),输出结果是正确.不过,如果有人知道如何使用ggmap,请分享它.

google-maps r data-analysis ggplot2 ggmap

10
推荐指数
1
解决办法
1525
查看次数

聚类后​​为数据框分配类

我在数据帧 df1 上使用了 k-means 聚类算法,结果如下图所示。

library(ade4)
df1 <- data.frame(x=runif(100), y=runif(100))
plot(df1)
km <- kmeans(df1, centers=3)
kmeansRes<-factor(km$cluster)
s.class(df1,fac=kmeansRes, add.plot=TRUE, col=rainbow(nlevels(kmeansRes)))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明 是否有可能将观察来自哪个集群的信息添加到数据框?

r cluster-analysis data-mining k-means

2
推荐指数
1
解决办法
6855
查看次数