r - 如何标记散点图上对角线以下的所有点
问题描述
如果点落在对角线下方,我想要变量 df 中的一列,其值为 TRUE 或 FALSE。情节只是为了说明这个概念。我非常坚持这一点,任何帮助表示赞赏。
# Test data
df <- data.frame(
x = sample(1:100, 100, replace=FALSE),
y = sample(1:100, 100, replace=FALSE))
library(ggplot2)
g <- ggplot(data=df, aes(x=x, y=y))
g + geom_point() +
geom_abline(intercept = 25, slope = 1)
解决方案
您可以尝试这样的事情(进一步扩展@Bas的建议)。您想要的值保存在变量ye
中,您也可以将其更改为逻辑值。您也可以更改ye
. 在这种情况下,我添加了数字,以便您可以看到标签:
library(ggplot2)
library(dplyr)
#Data
df <- data.frame(
x = sample(1:100, 100, replace=FALSE),
y = sample(1:100, 100, replace=FALSE))
#Create equation
df %>% mutate(ye=25+1*x,lab=ifelse(y<ye,y,NA)) -> df2
#Plot
ggplot(data=df2, aes(x=x, y=y,label=lab))+
geom_point() +
geom_abline(intercept = 25, slope = 1)+
geom_text(nudge_y = 2,check_overlap = T,size=2)
推荐阅读
- node.js - 如何处理 Webpack 中的 Node.js Worker 线程?
- scala - Scala期货使用Future.sequence但返回元组有问题
- amazon-cloudformation - 将不同的参数传递给不同的任务实例
- vb.net - 将数据传递给不同的 UI 线程
- python - 如何在数据框中的多个列中使用 pd.Series.value_counts 来获取总数?
- azure - Azure 媒体服务视频不适用于 Android 和 iOS 真实设备 React Native
- qt5 - Qt6 和 Qt5 向后兼容
- javascript - 命令在nodejs的execSync中不起作用
- javascript - 如何根据其中心而不是 React Native 中的起点旋转 svg?
- spring-boot - 如何根据请求更改 Spring JPA 中的模式