我正在尝试制作一个条形图,其中每行都由变量“ident”着色,然后点根据变量“Pvalue”更改透明度,但是我想要一个阈值,其中只有具有 pvalue 的点<0.1 are colored the rest should be a light grey color.
到目前为止,我尝试了以下方法:
p = ggplot(da_results, aes(x=ident, y=logFC,color = ident)) + geom_jitter()+coord_flip()+geom_point(alpha = da_results$PValue) + 主题(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(颜色 = "黑色"))+geom_hline(yintercept = 0)
这给了我除了p值阈值之外的一切。
也许尝试使用 alpha 作为一种美学?例如
library(tidyverse)
da_results <- read.table(text = "ident baseMean logFC lfcSE stat pvalue padj
ENSG00000000003.14 2700.791337 -0.345466785 0.202389477 -1.706940451 0.087833121 0.001
ENSG00000000419.12 1571.143316 -0.348258736 0.150807514 -2.309293001 0.020927328 0.120478416
ENSG00000000457.13 526.2282051 -0.051250213 0.180482116 -0.283962835 0.776438862 0.003
ENSG00000000460.16 1108.138705 -0.078538637 0.167859597 -0.467882913 0.639868323 0.827329552
ENSG00000001036.13 2662.132047 0.121419414 0.175209898 0.692994033 0.488313296 0.728842774
ENSG00000001084.10 1325.447272 0.89 0.154875429 -0.423289781 0.672083849 0.0004
ENSG00000001167.14 1829.828657 -0.221749678 0.153100403 -1.448393819 0.147506943 0.386446872
ENSG00000001460.17 641.7582879 -0.252419377 0.183602552 -1.374814095 0.169189087 0.417816879",
header = TRUE)
ggplot(da_results, aes(x=ident, y=logFC, color = ident)) +
geom_jitter() +
coord_flip() +
geom_point(aes(alpha = pvalue)) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.line = element_line(colour = "black")) +
geom_hline(yintercept = 0)
创建于 2024-03-13,使用 reprex v2.1.0