【发布时间】:2015-11-04 20:27:20
【问题描述】:
【问题讨论】:
-
您可以使用
identify()逐个选择点 -
问题是那个云中可能有 500 个点。
-
你不能识别出极端的然后过滤掉中间的
-
不确定我是否关注...
标签: r ggplot2 scatter-plot
【问题讨论】:
identify()逐个选择点
标签: r ggplot2 scatter-plot
原则上,可以使用ggmap::gglocator() 选择一堆点,构建一个多边形,然后使用空间工具在多边形中查找点,但将这些部分组合在一起需要大量工作。如果是我,我会 (1) 从该集合中选择带有x>(-15) & y>0 (2) 的所有点,选择带有y>40-(4/3)*x 的所有点(注视形成集群左下边界的直线的截距斜率)。 (事实上,第 2 步可能会自行运行,而无需先运行第 1 步。)
只要多做一点工作,就可以编写一个工具来概括这一点,该工具将定义来自一对gglocator()点的边界线......
【讨论】:
我意识到这是一篇旧帖子 - 但我在这里找到了一些很好的代码来处理问题的第一部分(请参阅“带环绕的散点图”):
http://r-statistics.co/Top50-Ggplot2-Visualizations-MasterList-R-Code.html
更新:链接上下文 - 比我更聪明、更有经验的人记录了有一个函数 (geom_encircle) 可以为问题的第一部分提供解决方案。这个函数很好地集成到 ggplot2 语法中。我只是碰巧同时注意到了这个 SO 问题和链接的网站,并认为这对于寻找相同事物的人们将来的参考很有用(并且不想让它看起来我应该得到信用) . geom_encircle 需要 ggalt 包。
将您直接带到页面上相关位置的完整链接: http://r-statistics.co/Top50-Ggplot2-Visualizations-MasterList-R-Code.html#Scatterplot%20With%20Encircling
【讨论】: