R 散点图脚本有助于可视化具有统计意义的基因及其相应的Z分数
所以我有一个独特基因的数据集,在x轴的“I..Gene”列下,在y轴的“UbZScore”列下,它们各自的Z分数 我已经运行了这个脚本来生成一个基因的散点图,以及它们对应的Z值。我打算用散点图给基因上色,Z值至少为1.96或小于-1.96,满足条件的基因在图上的点旁边显示其基因名称。此外,我还想知道我的代码需要做哪些修改才能使“真”或“假”的颜色与脚本自动生成的颜色不同,以及如何将“真”和“假”重命名为其他颜色。我还附加了脚本生成的图形R 散点图脚本有助于可视化具有统计意义的基因及其相应的Z分数,r,ggplot2,scatter-plot,R,Ggplot2,Scatter Plot,所以我有一个独特基因的数据集,在x轴的“I..Gene”列下,在y轴的“UbZScore”列下,它们各自的Z分数 我已经运行了这个脚本来生成一个基因的散点图,以及它们对应的Z值。我打算用散点图给基因上色,Z值至少为1.96或小于-1.96,满足条件的基因在图上的点旁边显示其基因名称。此外,我还想知道我的代码需要做哪些修改才能使“真”或“假”的颜色与脚本自动生成的颜色不同,以及如何将“真”和“假”重命名为其他颜色。我还附加了脚本生成的图形 ggplot(MasterScreen, mapp
ggplot(MasterScreen, mapping=aes(x = ï..Gene, y = UbZscore)) +
geom_point(aes(color = {UbZscore >= 1.96 | UbZscore<= -1.96})) +
labs(
x = "Genes",
y = "Z-Score of Ubiquitin Colocalization",
color = "Statistical Significance",
title = "Significant Genes in Ubiquitin Colocalization")
ggplot(主屏幕,映射=aes(x=i..Gene,y=UbZscore))+
geom_point(aes)(color={UbZscore>=1.96 | UbZscore根据数据点的值对其进行着色的一种方法是使用多个过滤数据帧
如果您能提供您的数据帧的一些子集,以便我们尝试解决它,那就更好了。
但不管怎样,我的建议都是这样
首先,通过z分数过滤数据帧
library(dplyr)
MasterScreenHigh <- MasterScreen %>%
filter(UbZscore > 1.96)
MasterScreenInner <- MasterScreen %>%
filter(UbZscore <= 1.96 && UbZscore >= -1.96)
MasterScreenLow <- MasterScreen %>%
filter(UbZscore < -1.96)
因为我没有任何数据可以尝试,所以我不确定这是否能很好地工作。但是这种方法是可能的。我已经做过很多次了。只要根据阈值创建一个新变量,并根据该变量进行着色。如果使用dplyr,可以在时使用case\u
作为向量化的If语句。例如,使用mtcars,我们可以创建一个列
变量,当mpg<20时为“红色”,当mpg>=20时为“绿色”(显然,您可以修改此变量以获得统计数据)。您也可以将标签
传递给ggplot的aes
调用,然后添加几何图形文本
,以获得实际绘图上的标签
library(dplyr)
library(ggplot2)
mtcars %>%
mutate(
# add variable of labels
name = row.names(.),
# add colour variable
col = case_when(
mpg < 20 ~ 'red',
mpg >= 20 ~ 'green')) %>%
ggplot(aes(x = disp, y = mpg, color = col, label = name)) +
geom_point() +
geom_text()
库(dplyr)
图书馆(GG2)
mtcars%>%
变异(
#添加标签的变量
名称=行。名称(.),
#添加颜色变量
col=情况(
mpg<20~‘红色’,
mpg>=20~‘绿色’)%%>%
ggplot(aes(x=disp,y=mpg,color=col,label=name))+
几何点()+
geom_text()
制作多个数据帧肯定不是最好的方法,为什么不创建一个新的变量和颜色呢?这实际上是一个很好的建议,根据阈值创建一个新列。感谢inputHowdy Omar,我刚刚用数据集格式的屏幕截图更新了这个问题,但感谢大家的热情lcome。刚开始一个研究项目,它需要我处理900个基因以进行可视化,所以我在本月早些时候跳上了R编码列车,男孩,这是一件值得学习的事情。嗨,你的建议成功地为基因生成了名称,但我想知道你是否有一个脚本可以建议从一系列值中删除名称es基于y轴。也非常感谢您之前的脚本!您好。如果答案成功回答了您的问题,请将其标记为已接受。您应该用新问题发表新文章。发表时请随时通知我。
library(dplyr)
library(ggplot2)
mtcars %>%
mutate(
# add variable of labels
name = row.names(.),
# add colour variable
col = case_when(
mpg < 20 ~ 'red',
mpg >= 20 ~ 'green')) %>%
ggplot(aes(x = disp, y = mpg, color = col, label = name)) +
geom_point() +
geom_text()