查看原文
其他

R绘图模板——三元图绘制!

王志山 科研后花园 2023-09-08
 

点击上方

“科研后花园”

关注我们


代码如下:

1、设置工作目录并加载所需R包:

rm(list = ls())setwd("D:\\三元相图")
#安装R包# install.packages("ggtern")#加载R包library(ggtern) # An Extension to 'ggplot2', for the Creation of Ternary Diagramslibrary(RColorBrewer) # ColorBrewer Paletteslibrary(grid) # The Grid Graphics Packagelibrary(scales) # Scale Functions for Visualizatio

2、加载数据

# 加载数据df <- read.table(file="data.txt",sep="\t",header=T,check.names=FALSE)# 创建分组信息数据集df$group <- rep(c("T", "D", "L", "K"),each = 20)#计算3个样本的平均值定义点的大小df$size <- (apply(df[2:4], 1, mean))

3、自定义颜色

#配色col <- colorRampPalette(brewer.pal(11,"Set1"))(4)#背景色color <- colorRampPalette(brewer.pal(11,"PuOr"))(30)

4、绘图

#绘图ggtern(data=df,aes(x=A,y=B,z=C))+ #X,Y,Z轴分别代表的变量 geom_mask()+# 显示超出边界的点 geom_point(aes(size=size,#以散点图形式呈现,大小是size color=group),#颜色映射的为group变量 alpha=0.8)+#透明度 scale_colour_manual(values = col)+#自定义颜色 guides(color = guide_legend(override.aes = list(size = 4)))+#改变颜色映射图例符号大小 theme_classic()+#主题 labs(title = "Ternary plot")+#标题 theme(axis.line=element_line(linetype=1,color="grey",size=1),#坐标轴粗细、类型及颜色设置 plot.title = element_text(size=15,hjust = 0.5)) #标题大小和位置#添加背景grid.raster(alpha(color, 0.1), width = unit(1, "npc"), height = unit(1,"npc"), interpolate = T)

温馨提示

如果你喜欢本文,请分享到朋友圈,想要获得更多信息,请关注我。







您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存