IMP researchresearchR for statistics

ggplot绘图,在指定区域添加颜色

2022-12-10  本文已影响0人  小杜的生信筆記

本教程网址:https://mp.weixin.qq.com/s/vN4nh6hi1udiDhHP7BfrOA
前言

前面两天,有童鞋在群里面咨询“使用ggplot绘图时,如何在指定区域添加指定图形?”。这块内容的教程还是比较多的,以及使用ggplot绘图还是比较容易和方便的。
那么,自己也花费一点时间进行查找和统计一下,做个笔记整理吧!

如果,你需要的话,那么就自行收藏这篇笔记吧!!


1、柱状图颜色更改教程网址:https://mp.weixin.qq.com/s/uYJ5ubnmcNf6298JhgKRxw本篇教程是很早以前发布的 ,里面有涉及到更改柱子的颜色的代码。

详细代码:
使用:scale_fill_manual()函数添加颜色
## 绘图
ggplot(df1, aes(x=group, y=value, fill = group))+
  geom_bar(stat = "identity", position = "dodge",color = "black")+
  scale_y_continuous(expand = c(0,0),limits = c(0,3.4))+ ##y从0开始
  #更改柱子的颜色
  scale_fill_manual(values = c("#0f0f0f","#5f5f5f", "#d7d7d7","#ffffff"))

--
更改X轴和Y轴的颜色

使用:theme()函数即可

mytheme2<-theme_classic()+
  theme(text=element_text(family = "sans",colour ="gray30",size = 12),
        axis.line = element_line(size = 0.6,colour = "gray30"),
        axis.ticks = element_line(size = 0.6,colour = "gray30"),
        axis.ticks.length = unit(1.5,units = "mm"),
        plot.margin=unit(x=c(top.mar,right.mar,bottom.mar,left.mar),
                         units="inches"))

--

2、频率直方图颜色更改

这是今天到的教程,是来自基迪奥生物的教程。教程如何根据数据范围自定义直方图的颜色?做的真的是比较详细。
进行小小的总结一下:

(1)颜色渐变

使用:

scale_fill_gradient(low = "red", high = "yellow")

(2)在指定区域颜色
使用:

geom_histogram( data=subset(data,x>-11),  ## 主要就是这个判断条件
fill=alpha("#99CC00",0.5),
color="#99CC00",
binwidth = 2)

使用同样的方法:

geom_histogram( data=subset(data,x>-11&x<11),  ## 判断
fill=alpha("#99CC00",0.5),
color="#99CC00",
binwidth = 2)

3、区域性的颜色添加

这个教程忘记是从哪里获得的,很早以前就记录的。也感谢大佬们的分享。
具体代码如下:
这里使用的是geom_rect()函数

## 随机生成一份数据
b <- seq(0,2.5, 0.05)
df3 <- data.frame(x = 1:60, y =sample(b,60, replace = T))
df4 <- data.frame(x = 1:60, y =sample(b,60, replace = T))

## 绘图
ggplot()+
  geom_rect(aes(xmin=5,xmax=12,ymin=-Inf,ymax=Inf),
            fill="grey",alpha=0.3)+
  geom_rect(aes(xmin=23,xmax=28,ymin=-Inf,ymax=Inf),
            fill="grey",alpha=0.3)+
  geom_rect(aes(xmin=35,xmax=52,ymin=-Inf,ymax=Inf),
            fill="grey",alpha=0.3)+
  geom_rect(aes(xmin=55,xmax=59,ymin=-Inf,ymax=Inf),
            fill="grey",alpha=0.)+
  geom_line(data=df3,aes(x=x,y=y),
            size=1,color="#80c97f")+
  geom_line(data=df4,aes(x=x,y=y),
            size=1,color="#a68dc8")+
  ylim(0,3)+
  theme_bw()+
  theme(panel.grid = element_blank(),
        axis.title = element_blank(),
        plot.title = element_text(hjust=0.5))
  #labs(title="Chr15")+
  # annotate(geom = "text",x=5,y=2.8,
  #          label="Gala Haplome B")

4、指定你绘图时出现的颜色

使用上面的数据进行试行运行一下吧!!
方法一:直接使用绘图函数中的"color="参数进行修改。如上图所示



方法二:使用"scale_colour_manual()"函数进行修改

scale_colour_manual(values = c("red","blue"))

我们在指定区域添加指定颜色的教程很多,我这里只是收集了部分的教程。如果你的手中有好的教程可以在评论区进行分享哦。

我们期待你的共享!!


小杜的生信筆記 ,主要发表或收录生物信息学的教程,以及基于R的分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!

上一篇下一篇

猜你喜欢

热点阅读