跟着Nature学绘图(6) PCA分析图表可视化
分析 可视化 绘图 Nature 图表 跟着 PCA
2023-06-13 09:13:01 时间
❝本节来继续进行论文图表复现,主要还是基于「ggplot2」来进行数据可视化 ❞
❝近期系统整理了一下公众号所写过的一些经典文档,如果需要获取全部代码的欢迎加入小编的VIP交流群,「付费99元,周期一年」群内同步上传代码, 公众号右下角添加微信咨询即可 ❞
以往案例
本节来复现文章中的Fig3-h
安装并加载R包
package.list=c("tidyverse","ggrepel","factoextra","RColorBrewer")
for (package in package.list) {
if (!require(package,character.only=T, quietly=T)) {
install.packages(package)
library(package, character.only=T)
}
}
导入数据
df <- read_tsv("F3.xls")
PCA分析
pca <- df %>% column_to_rownames(var="Sample_id") %>%
select(-Subtype) %>% prcomp(.,scale. = TRUE)
每个主成分解释的总方差
var_explained <- pca$sdev^2/sum(pca$sdev^2)
数据可视化
fviz_pca_biplot(pca, axes = c(1, 2),geom.ind = c("point"),geom.var = c("arrow", "text"),
pointshape = 20,pointsize=4,
label ="var",repel = TRUE,col.var = "grey50",
labelsize=0.5,
col.ind = df$Subtype)+
scale_color_manual(values = colorRampPalette(brewer.pal(12,"Paired"))(4))+
labs(x=paste0("(PC1: ",round(var_explained[1]*100,2),"%)"),
y=paste0("(PC2: ",round(var_explained[2]*100,2),"%)"),
title="PCA-Biplot")+
theme(panel.background = element_rect(fill = 'white', colour = 'black'),
axis.title.x = element_text(colour="black",size = 12,margin = margin(t=12)),
axis.title.y = element_text(colour="black",size = 12,margin = margin(r=12)),
axis.text=element_text(color="black"),
plot.title = element_text(size=12,colour = "black",hjust=0.5,face = "bold"),
legend.title = element_blank(),
legend.key=element_blank(), # 图例键为空
legend.text = element_text(color="black",size=9), # 定义图例文本
legend.spacing.x=unit(0.1,'cm'), # 定义文本书平距离
legend.key.width=unit(0.2,'cm'), # 定义图例水平大小
legend.key.height=unit(0.2,'cm'), # 定义图例垂直大小
legend.background=element_blank(), # 设置背景为空
legend.box.background=element_rect(colour="black"), # 图例绘制边框
legend.position=c(1,0),legend.justification=c(1,0))
相关文章
- Elastic Stack——Logstash基本使用、实时数据监控和可视化分析
- 数据采集、分析挖掘、可视化,看这一篇就够了!
- [Python从零到壹] 十六.文本挖掘之词云热点与LDA主题分布分析万字详解
- R语言、SAS潜类别(分类)轨迹模型LCTM分析体重指数 (BMI)数据可视化|附代码数据
- JVisualVm可视化性能分析工具
- Android RIL 调试问题分析 ——系统篇(4)
- 风雨桌面日历 2.2 破解分析
- 杭州出租车行驶轨迹数据空间时间可视化分析|附代码数据
- R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析|附代码数据
- R语言、SAS潜类别(分类)轨迹模型LCTM分析体重指数 (BMI)数据可视化|附代码数据
- R语言贝叶斯MCMC:用rstan建立线性回归模型分析汽车数据和可视化诊断|附代码数据
- R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性|附代码数据
- EViews 11.0 经济学和金融学分析软件,最新软件安装包下载附详细安装教程
- 关于redigo中PubSub的一点小坑分析
- Oracle Arraysize设置对于逻辑读的影响实例分析
- Spark项目之电商用户行为分析大数据平台之(十二)Spark上下文构建及模拟数据生成详解大数据
- Linux系统内存占用分析(linux消耗内存)
- 恶意软件Linux.Mumblehard分析
- python 正则表达式分析nginx日志
- 离线分析MSSQL应用于大数据可视化(离线分析mssql)
- Oracle 分析表的强大功能(oracle 分析表作用)
- ORACLE常见错误代码的分析与解决三
- jQuery创建插件的代码分析
- smarty缓存用法分析