首页 > 解决方案 > 添加存储在变量中的值作为ggplot中的图例

问题描述

我有一个看起来像这样的数据框

ID  GeneID  geneSymbol  chr strand  longExonStart_0base longExonEnd shortES shortEE flankingES  flankingEE  ID  IJC_SAMPLE_1    SJC_SAMPLE_1    IJC_SAMPLE_2    SJC_SAMPLE_2    IncFormLen  SkipFormLen PValue  FDR IncLevel1   IncLevel2   IncLevelDifference
2313    "ENSG00000142173.14"    "COL6A2"    chr21   +   46128902    46129808    46129195    46129808    46126502    46126541    2313    3,4 0,0 0,0 9,5 298 149 2.34E-12    1.26E-08    1.0,1.0 0.0,0.0 1
34  "ENSG00000149809.14"    "TM7SF2"    chr11   +   65112810    65113414    65113368    65113414    65112514    65112711    34  558,518 27,24   679,705 9,1 298 149 6.78E-10    1.82E-06    0.912,0.915 0.974,0.997 -0.072
1069    "ENSG00000077232.17"    "DNAJC10"   chr2    +   182739544   182740388   182740298   182740388   182736248   182736386   1069    1,3 203,274 23,19   176,209 298 149 1.88E-09    2.52E-06    0.002,0.005 0.061,0.043 -0.048
306 "ENSG00000092199.17"    "HNRNPC"    chr14   -   21263310    21263829    21263310    21263336    21269297    21269442    306 108,164 3552,3382   236,243 2681,3045   298 149 1.55E-09    2.52E-06    0.015,0.024 0.042,0.038 -0.021
35  "ENSG00000149809.14"    "TM7SF2"    chr11   +   65113219    65113414    65113368    65113414    65112514    65112711    35  324,295 27,24   329,429 9,1 297 149 2.55E-09    2.74E-06    0.858,0.86  0.948,0.995 -0.113
2683    "ENSG00000123136.14"    "DDX39A"    chr19   -   14409741    14409981    14409741    14409873    14410215    14410334    2683    91,57   1661,1148   144,108 1003,1122   256 149 2.40E-08    2.15E-05    0.031,0.028 0.077,0.053 -0.036
7736    "ENSG00000182979.17"    "MTA1"  chr14   +   105464415   105464567   105464462   105464567   105464031   105464147   7736    614,534 88,76   649,685 222,189 195 149 4.10E-08    3.14E-05    0.842,0.843 0.691,0.735 0.13
4945    "ENSG00000197713.14"    "RPE"   chr2    +   210019668   210019961   210019672   210019961   210017472   210017559   4945    347,377 4,2 258,339 16,21   152 149 5.83E-08    3.91E-05    0.988,0.995 0.941,0.941 0.051
5187    "ENSG00000253540.5" "FAM86HP"   chr3    -   130102763   130102935   130102763   130102913   130103740   130104006   5187    3,1 0,0 7,0 11,2    170 149 1.37E-07    8.15E-05    1.0,1.0 0.358,0.0   0.821
2052    "ENSG00000130475.14"    "FCHO1" chr19   +   17788269    17788557    17788283    17788557    17787681    17787846    2052    22,24   415,300 1,5 257,327 162 149 2.10E-07    9.97E-05    0.046,0.069 0.004,0.014 0.049
4329    "ENSG00000123219.12"    "CENPK" chr5    -   65554796    65554946    65554796    65554898    65561496    65561564    4329    12,13   9,4 14,22   0,0 196 149 2.23E-07    9.97E-05    0.503,0.712 1.0,1.0 -0.393
6766    "ENSG00000123815.11"    "COQ8B" chr19   -   40705095    40705447    40705095    40705181    40710058    40710136    6766    126,82  14,5    149,180 0,2 298 149 1.86E-07    9.97E-05    0.818,0.891 1.0,0.978   -0.134
4074    "ENSG00000167220.11"    "HDHD2" chr18   -   47134495    47134704    47134495    47134677    47136338    47136449    4074    237,235 30,7    161,205 2,1 175 149 3.12E-07    0.09    0.871,0.966 0.986,0.994 -0.072
744 "ENSG00000099840.13"    "IZUMO4"    chr19   +   2097928 2098334 2098286 2098334 2097423 2097495 744 2,3 0,0 11,2    4,5 298 149 3.09E-07    0.09    1.0,1.0 0.579,0.167 0.627
3215    "ENSG00000122033.14"    "MTIF3" chr13   -   27445087    27445156    27445087    27445137    27449851    27449918    3215    12,9    0,0 6,7 4,6 167 149 3.61E-07    0.09    1.0,1.0 0.572,0.51  0.459
940 "ENSG00000206113.10"    "CFAP99"    chr4    +   2449666 2449750 2449669 2449750 2445130 2445308 940 3,2 0,0 0,2 1,4 151 149 4.91E-07    0.09    1.0,1.0 0.0,0.33    0.835
2037    "ENSG00000011243.17"    "AKAP8L"    chr19   -   15398629    15398766    15398629    15398703    15399301    15399410    2037    39,31   5,9 91,83   1,1 211 149 5.77E-07    0.09    0.846,0.709 0.985,0.983 -0.207
7995    "ENSG00000114388.12"    "NPRL2" chr3    -   50348684    50349010    50348684    50348782    50349664    50349833    7995    0,2 3,1 9,3 0,0 298 149 6.03E-07    0.09    0.0,0.5 1.0,1.0 -0.75
6741    "ENSG00000139974.15"    "SLC38A6"   chr14   +   61078809    61078927    61078829    61078927    61052348    61052985    6741    1,9 2,0 0,0 2,3 168 149 7.19E-07    0.09    0.307,1.0   0.0,0.0 0.653
7288    "ENSG00000266714.7" "MYO15B"    chr17   +   75625765    75625977    75625843    75625977    75625526    75625660    7288    1,1 0,0 2,8 14,2    226 149 1.07E-06    0.09    1.0,1.0 0.086,0.725 0.595

我正在使用此代码将一列添加到名为 sig 的数据框中。这是代码:

# input
a3ss <- read.table("A3SS.MATS.JunctionCountOnly_without_NA_threshold_5_reads.txt",header=TRUE,sep="\t")

# adding a column named sig with values "sig" and "not_sig"
a3ss <- mutate(a3ss,sig=ifelse(a3ss$FDR <=0.05,"sig","not_sig"))

# counting the number of sig/non significant events
sig <- length(which(a3ss=="sig")) #12
not_sig <- length(which(a3ss=="not_sig")) #8

ggplot(a3ss,aes(IncLevelDifference,-log10(FDR)))+ geom_point(aes(colour = sig),size=0.5) + 
  scale_color_manual(values=c(sig = "red",not_sig = "black")) + coord_cartesian(xlim=c(-1, 1),ylim=c(0,13)) + xlab("delPSI") + 
  ggtitle("A3SS_bulk_vs_ko")+ geom_segment(aes(x=-0.05,y= 0,xend= -0.05,yend=6),linetype="dashed",color="blue")+
  geom_segment(aes(x=0.05,y=0,xend=0.05,yend=6),linetype="dashed",color="blue")

我得到一个默认图例,但我想在图例中包含我存储在变量 sig 和 not_sig 中的值。我应该在 ggplot 中使用什么来包含它?

谢谢您的帮助!!

标签: rggplot2legend

解决方案


像这样:

scale_color_manual(values=c(sig = "red",not_sig = "black"), labels= c(sig, not_sig))

或者,如果您想要围绕这些值的文本:

scale_color_manual(values=c(sig = "red",not_sig = "black"), labels= c(paste("something",sig), paste("something else", not_sig))

推荐阅读