安装、加载包
#设置工作环境
rm(list=ls())
setwd("D:\\桌面\\ggplot2添加图例及图例相关设置")
#加载包
# install.packages("ggpubr")
# install.packages('ggplot2')
# install.packages('reshape2')
#加载包
library(ggpubr)
library(ggplot2)
library(reshape2)
加载数据并绘图
#读取数据
df <- read.table(file="Genus.txt",sep="\t",header=T,check.names=FALSE,row.names = 1)
#转换数据
df$Tax=rownames(df)
df1=melt(df)
colnames(df1)=c("Tax","Samples","value")
#绘图
p <- ggplot(df1, aes(x = Samples, y = Tax, size = value, color=Samples)) +
geom_point(aes(size=value))+
theme(panel.background = element_blank(),
panel.grid.major = element_line(color = "gray"),#网格线条颜色
panel.border = element_rect(color="black",fill=NA))#边框色
p
图例设置
1、图例关闭——三种方法
p+theme(legend.position = 'none')#关闭全部图例
p+guides(color='none')#关闭部分图例,如图例中散点颜色的部分图例
p+scale_color_discrete(guide='none')#关闭部分图例,如图例中散点颜色的部分图例
2、图例位置,可以通过theme中的legend.position函数控制图例位置
p+theme(legend.position = 'top')#控制图例放置在图中上下左右('top','bottom','right','left')
p+theme(legend.position = c(0.95,0.6))#通过设置位置坐标控制图例位置,范围为0~1
3、图例方向——通过legend.direction函数或者guides中的guide_legend控制:
p+theme(legend.direction = 'horizontal')#有垂直与竖直两种方向,‘horizontal’,‘vertical’
#精准设置
p+guides(color=guide_legend(ncol = 3,#根据ncol或者nrow设置图例显示行数或列数(设置一个即可)
byrow = T,#默认F,表示按照列填充
reverse = T))#默认F,表示升序填充,反之则降序
4、图例标题去除——三种方式
p+theme(legend.title = element_blank())#删除所有图例
p+labs(color=NULL)#删除所有图例
p+scale_color_discrete(name=NULL)#只删除部分图例
5、图例符号周围区域大小及符号本身大小设置
p+theme(legend.key.size = unit(20,"point"))#增加符号周围的区域
p+guides(color = guide_legend(override.aes = list(size = 5)))#改变符号大小
6、图例框的填充颜色
p+theme(legend.key = element_rect(fill = 'green'))
7、自定义图例标签顺序——通过将数据中的相应列数据转换为factor型数据进而调整显示顺序
df1$Samples=factor(df1$Samples,levels = c('B','A','D','C','F','G','H','I','J','E','K'))#定义顺序
ggplot(df1, aes(x = Samples, y = Tax, size = value, color=Samples)) +
geom_point(aes(size=value))+
theme(panel.background = element_blank(),
panel.grid.major = element_line(color = "gray"),#网格线条颜色
panel.border = element_rect(color="black",fill=NA))#边框色
更多精彩欢迎大家关注微信公众号【科研后花园】!!!