大家好,欢迎来到IT知识分享网。
尔云间 一个专门做科研的团队
生信果 关注我们
今天利用ggplot2来进行多角图的绘制,代码如下:
1. 安装需要的R包
install.packages(“ggplot2”)
2. 导入需要的R包
library(ggplot2)
3. 示例代码
raw.data <- read.table(“group.txt”, header = T, stringsAsFactors = T)
# 记录末列的名称 txt <- colnames(raw.data)[ncol(raw.data)] 计算坐标轴角度 sides <- ncol(raw.data) - 1 # 边的个数(列数减1,因为有末列) start_angle <- 90 # 开始角度 basis <- t(sapply((1:sides)-1, function(i){ c(cos(2 * i * pi / sides + start_angle * pi / 180), sin(2 * i * pi / sides + start_angle * pi / 180)) })) 将12维的数据坐标投射到二维 data <- as.matrix(raw.data[, -match(txt, colnames(raw.data))]) %*% basis # 准备绘图数据 点的数据 plot.data <- data.frame( "x" = data[, 1], "y" = data[, 2], "Group" = raw.data$celltype ) 多边形的数据 basis <- data.frame( "x" = basis[, 1], "y" = basis[, 2] ) 类图例的数据 label <- data.frame( "x" = 1.1 * basis[, 1], "y" = 1.1 * basis[, 2], "label" = colnames(raw.data)[-ncol(raw.data)] ) 设定颜色(使用的是RGB颜色) color.palette <- list( 'hEndo'= c(190, 10, 10),'hPeric'= c(225, 160, 30),'hMgl'= c(217, 245, 7), 'hDA1'= c(170, 180, 170),'hDA2'= c(130, 140, 140),'hNbM'= c(180, 140, 130), 'hNbML1'= c(100, 100, 240),'hProgM'= c( 80, 235, 255),'hProgFPM'=c(190, 235, 255), 'hProgFPL'=c(210, 255, 215),'hProgBP'=c(230, 140, 120),'hNProg'= c(255, 195, 28), 'hNbML5'= c(139, 101, 100),'hRgl1'= c(252, 183, 26),'hRgl3'= c(214, 194, 39), 'hRgl2c'= c(255, 120, 155),'hRgl2b'= c(250, 145, 45),'hRgl2a'= c(250, 125, 25), 'hDA0'= c(190, 200, 190),'hOPC'= c(255, 35, 155),'hRN'= c(199, 121, 41), 'hNbGaba'= c( 40, 55, 130),'hGaba'= c( 7, 121, 61),'hOMTN'= c( 95, 186, 70), 'hSert'= c( 50, 180, 180),'eSCa'= c(245, 205, 170),'eSCb'= c(205, 245, 170), 'eSCc'= c(205, 205, 220) ) color.palette <- lapply(color.palette, function(x){ rgb(red = x[1]/255, green = x[2]/255, blue = x[3]/255) }) color.palette <- unlist(color.palette) # 最终的颜色格式为一个带名称的16进制字符串 开始绘图 ggplot(plot.data, aes(x = x, y = y)) + geom_point(aes(col = Group, size = .5)) + geom_polygon(mapping = aes(x = x, y = y), data = basis, fill = "transparent", color = "black", size = 1) + geom_text(mapping = aes(x = x, y = y, label = label), data = label) + scale_color_manual(values = color.palette) + theme_classic() + theme(axis.line = element_blank(), axis.title = element_blank(), axis.ticks = element_blank(), axis.text = element_blank()) ggsave("wheelplot.pdf", width = 10, height = 8) # 保存图形
代码合集
- 【1】lncRNA的拷贝数变异下游相关分析
- 【2】R可视化:ggstatsplot包—科研界的美图秀秀
- 【3】随机森林算法用于分类预测和筛选诊断标志物
- 【4】基于本地Java版GSEA的输出结果整合多个通路到一张图
- 【5】基于岭回归模型和基因表达矩阵估算样本对药物反应的敏感性
- 【6】基于R包NMF对样本进行分型分析
- 【7】DALEX包用于探索、解释和评估模型;分析不同特征变量对响应变量的影响
- 【8】根据肿瘤突变负荷TMB进行KM生存分析寻找最佳的cutoff
- 【9】基于单样本富集分析算法评估组织中的免疫细胞浸润水平
- 【10】代码分享│什么?你还在用散点图来可视化数据之间的相关性
- 【11】代码分享│诊断列线图、校准曲线、决策曲线和临床影响曲线的构建
- 【12】代码分享│你了解基因的动态变化模式吗
- 【13】代码分享│生物信息分析之SCI热门图表-复杂热图
- 【14】代码分享│生物信息分析之SCI热门图表-火山图
- 【15】代码分享│生物信息分析之SCI热门图表-箱型图和小提琴图
- 【16】代码分享│深度学习-人工神经网络(ANN)的构建
- 【17】代码分享│R可视化:高分文章绘图之基于RCircos包的多类型圈图绘制
- 【18】代码分享│R可视化:基因与功能之间的关系–GO功能富集网络图绘制
- 【19】代码分享│生物信息分析之SCI热门图表—KM曲线和tROC曲线
- 【20】代码分享│R可视化:肿瘤预后模型之Cox回归分析后用R语言绘制森林图
- 【21】代码分享│生物信息分析之SCI热门图表—相关性热图和散点图
- 【22】代码分享│生信分析之R语言分析相关性及可视化的N种风格
- 【23】代码分享│TCGA数据获取有困难,不会预处理,学习起来
- 【24】代码分享│机器学习-支持向量机递归特征消除(SVM-RFE)的构建
- 【25】代码分享│R可视化:对两个矩阵进行相关性可视化分析
- 【26】GEO数据库多数据集差异分析整合利器RRA,再也不用纠结去除批次效应
- 【27】你与生信大佬的距离,只差2分钟搞定预后模型构建和性能评估
- 【28】9+SCI纯生信,模型构建中的“流量明星”,你不得不知的LASSO
- 【29】手把手教你画美观大气的lasso回归模型图,为你的SCI增砖添瓦
- 【30】R可视化:clusterProfiler包做组间比较GO富集图
- 【31】代码分享|R可视化:复杂热图绘制技巧之热图中添加柱状图
- 【32】代码分享——基于基因突变信息分析肿瘤突变负荷
- 【33】代码分享│富集不到想要的通路?别放弃呀,试试GSEA
- 【34】代码分享│还在用PCA做降维聚类吗?最强降维模型tSNE–你值得拥有
- 【35】代码分享│GSVA:原来功能通路也能做差异分析!
- 【36】代码分享│Slingshot:你不知道的单细胞拟时序分析还有它
- 【37】基于基因功能注释信息挖掘关键作用基因
- 【38】基于癌症分类预测的标志物特征提取的SVM-RFE分析代码
- 【39】依据表型数据基于无监督聚类算法对研究群体进行分层聚类分析
- 【40】基于稳健排序整合算法对多数据集进行整合及可视化
- 【41】基于基因表达谱估算样本免疫基质评分和肿瘤纯度
- 【42】自动化绘制LASSO算法回归模型图
- 【43】用于临床诊断和临床决策影响的DCA分析
- 【44】基于样本预后生存信息和临床因素用于评价不同模型的一致性指数软件
- 【45】用于探索、解释和评估模型的DALEX残差分析软件
- 【46】基于细菌群落功能丰度结果进行差异功能分析及可视化
- 【47】基于基因差异分析结果绘制其在染色体上的分布
- 【48】利用逐步回归法筛选特征基因构建Cox风险模型分析
- 【49】基于Immune Subtype Classifier进行肿瘤免疫亚型分类
- 【50】不同物种之间的同源基因名称转换分析
- 【51】基于逐步多因素cox回归筛选预后标记基因并构建风险评分模型
- 【52】基于表达信息挖掘与关注基因密切相关的基因
- 【53】基因组学基因名称修正分析
- 【54】基于Spearman算法构建关联网络
- 【55】基于线性建模方法对代谢组和转录组数据整合分析
- 【56】基于lasso回归模型方法筛选特征基因
- 【57】基于线性建模方法对代谢组和转录组数据整合分析
生信人R语言学习必备
立刻拥有一个Rstudio账号
开启升级模式吧
(56线程,256G内存,个人存储1T)
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/108563.html