首页 > 解决方案 > 如何在ggplot中按阈值着色?

问题描述

我有一个线图,我想按阈值着色。所以我希望 0.5 以上的线的所有部分都是红色的,低于 0.5 的都是黑色的。我也是ggplot的新手,所以任何关于如何去做的解释都会有所帮助。

setwd("/Users/lukeferro/Desktop/Data/")

library("readxl")
library(ggplot2)
library(gridExtra)

m6a <- read_excel("m6a writers.xlsx", sheet="Sheet1")

names=colnames(m6a)
for(x in names[2:6]) 
{
data<-data.frame(m6a[,1],m6a[x])
assign(x, data[complete.cases(data), ])
}

num_plots<-1:5
x<-1
for(b in names[2:6]) 
{
  data<-get(b)
  p<-ggplot(data, aes_string(x="Residue", y=b)) + 
      geom_line() +
      ggtitle(paste(b)) +
      scale_y_continuous(limits = c(0,1), breaks = c(0,1)) +
      ylab(NULL)
  assign(paste0("p",x),p)
  x<-x+1
}

grid.arrange(p1, p2, p4, p5, nrow=2)

绘图示例

标签: rggplot2

解决方案


推荐阅读