r - 如何在ggplot中安排geom点的顺序?
问题描述
我正在尝试更改 ggplot 中点的顺序,到目前为止,我有以下代码,
up <- top.table$adj.P.Val < 0.05 & top.table$logFC > 1
down <- top.table$adj.P.Val < 0.05 & top.table$logFC < -1
non <- !(up | down)
df_up <- data.frame(x=aveLogCPM[up] , y=top.table$logFC[up])
df_down <- data.frame(x=aveLogCPM[down], y=top.table$logFC[down])
df_non <- data.frame(x=aveLogCPM[non] , y=top.table$logFC[non])
ggplot() +
geom_point(data = df_up , aes(x=x, y=y), color = "red") +
geom_point(data = df_down, aes(x=x, y=y), color = "blue") +
geom_point(data = df_non , aes(x=x, y=y), color = "black")
这导致
但是,我想要这样的东西:
解决方案
澄清@Igor F.的回答:
ggplot() +
geom_point(data = df_non , aes(x=x, y=y), color = "black") +
geom_point(data = df_up , aes(x=x, y=y), color = "red") +
geom_point(data = df_down, aes(x=x, y=y), color = "blue")
您还可以像在您想要的图像中所做的那样,减小黑点的大小并增加红/蓝点的大小,并结合上述分层(您将使用实际size
值进行调整以使其正确) :
ggplot() +
geom_point(data = df_non , aes(x=x, y=y), color = "black", size = 1) +
geom_point(data = df_up , aes(x=x, y=y), color = "red", size = 3) +
geom_point(data = df_down, aes(x=x, y=y), color = "blue", size = 3)
推荐阅读
- javascript - 带有下拉列表 ID 的 Javascrip 过滤 Json 文件
- java - 向上移动 XML 子元素而不更改文本流
- networking - 使用 Kubernetes sidecar 过滤流量/授权请求
- typescript - 使用可选参数将类型键转换为联合
- jmeter - Jmeter - matchNr 返回 null
- kotlin - 使用通用映射器将枚举值存储在对象框中
- c# - 如何在 Azure DevOps 中指定 signtool.exe 的位置?
- types - 是否可以创建实现通用功能的特征对象树,可能略有不同?
- rest - 同步两个发布方法的最佳方法是什么
- java - Netbeans 模块部署失败 - 无法将 BigInteger 转换为 Long