我有一些散点,想获取中心点以及中心点与每个点之间的距离。
我使用geom_mark_cicle来绘制这些点的cicles,但是没有找到x和y的中心点。 我的问题是如何找到如图所示的圆的中心点,这样我就可以计算中心点和每个点之间的距离。
例如:
dots <- data.frame(x = c(1,2,3,4), y =c(1,5,3,1))
ggplot2::ggplot(dots,mapping = aes(x = x,y = y)) +
ggforce::geom_mark_circle() +
geom_point()
致以最美好的祝愿,
嘿嘿
正如@Edward所指出的,圆的中心(或centroid)是
x
和y
值的平均值。您可以通过 colMeans()
或使用 dplyr::summarise()
获得此信息,例如:
library(dplyr)
## ... +
geom_point(data = summarise(dots, across(c(x,y), mean)),
col = "red", size = 5)
如果您想对同一图中的多个组执行此操作,您可以使用
group_by()
(或 .by
的 summarise()
参数)