前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >ggplot2画点和分组椭圆展示主成分分析(PCA)结果的简单小例子

ggplot2画点和分组椭圆展示主成分分析(PCA)结果的简单小例子

作者头像
用户7010445
发布于 2021-03-14 11:57:06
发布于 2021-03-14 11:57:06
5.7K00
代码可运行
举报
运行总次数:0
代码可运行

昨天的推文介绍了 画点和连线展示主成分分析结果的一个小例子ggplot2画点和连线展示主成分分析的结果简单小例子 今天的推文介绍一下另外一种选择就是 画点和分组椭圆,就是实现下面这个图的过程

image.png

这个图来自链接 http://www.sthda.com/english/articles/31-principal-component-methods-in-r-practical-guide/112-pca-principal-component-analysis-essentials/

这个链接介绍的很详细了,大家可以自己去看一下

  • 作主成分分析用到的是FactoMineR包中的PCA()函数
  • 作图用到的是factoextra包中的fviz_pca_ind()函数

这两个包如果是第一次使用需要先安装,运行如下命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
install.packages("FactoMineR")
install.packages("factoextra")

安装好以后运行如下命令加载

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(FactoMineR)
library(factoextra)

示例数据直接用R语言的内置鸢尾花数据集 iris

第一步是主成分分析
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
iris.pca <- PCA(iris[,-5], graph = FALSE)

这样主成分分析的结果就直接存储到了iris.pca里面了

画图展示结果

最基本的

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca)

image.png

接下来通过增加参数来美化
  • 仅仅展示点,去掉文字
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca,
             geom.ind = "point")
  • 按照提前设置的分组填充颜色
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca,
             geom.ind = "point",
             col.ind = iris$Species)
  • 更改默认的配色
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca,
             geom.ind = "point",
             col.ind = iris$Species,
             palette = c("#00AFBB", "#E7B800", "#FC4E07"))
  • 添加分组椭圆
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca,
             geom.ind = "point",
             col.ind = iris$Species,
             palette = c("#00AFBB", "#E7B800", "#FC4E07"),
             addEllipses = TRUE)
  • 更改图例的标题
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fviz_pca_ind(iris.pca,
             geom.ind = "point",
             col.ind = iris$Species,
             palette = c("#00AFBB", "#E7B800", "#FC4E07"),
             addEllipses = TRUE,
             legend.title="Group")

image.png

欢迎大家关注我的公众号

小明的数据分析笔记本

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

最近在B站看大一个日本童谣比赛银奖的小女孩,非常有意思,分享给大家

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
R语言主成分分析可视化(颜值高,很详细)
网络上很多R语言教程都是基于R语言实战进行修改,今天为大家介绍更好用的R包,在之前聚类分析中也经常用到:factoextra和factoMineR,关于主成分分析的可视化,大家比较常见的可能是ggbiplot,这几个R包都挺不错,大家可以比较下。
医学和生信笔记
2023/02/14
1.2K0
R语言主成分分析可视化(颜值高,很详细)
【R语言】factoextra生成发表级PCA主成分分析图(一)
今天我们来给大家介绍另一个做PCA分析并绘图的R包factoextra,很多SCI文章中都用到了这个R包。换句话说这个R包画出来的PCA图是发表级的。
生信交流平台
2022/09/21
1.1K0
【R语言】factoextra生成发表级PCA主成分分析图(一)
R语言中的主成分方法:PCA分析和可视化实用指南
主成分分析(PCA)允许我们总结和可视化包含多个相互关联的定量变量描述的个体/观察的数据集中的信息。每个变量都可以被视为不同的维度。如果你的数据集中有3个以上的变量,那么可视化多维超空间可能会非常困难。
简说基因
2025/03/13
3231
R语言中的主成分方法:PCA分析和可视化实用指南
高维数据 | R语言绘图基础之主成分分析
在视觉性方面,人类普遍能够感知的是二维和三维空间。对于高维数据的可视化是将高维数据投影到二维或三维空间,去掉冗余属性,同时保留高维空间的数据和特征。说白了,高维数据的可视化就是使用降维度方法,主要分成线性和非线性两大类,关于非线性的非度量多维尺度分析NMDS见往期文章非度量多维尺度分析(NMDS),关于线性的PCA方法,见往期文章PCA做图最佳搭档-ggbiplot,本文主要针对迷弥小粉丝关于绘制线性PCA图数据处理过程遇到的问题进行记录。
黑妹的小屋
2020/08/06
2K0
表达芯片数据分析3——基因差异分析绘制火山图及差异基因热图
Erics blog
2023/10/02
7141
R可视乎|主成分分析结果可视化
主成分分析法是很常用的一种数据降维方法[1]。该方法可以减少数据的维数,并保持对方差贡献最大的特征,相当于保留低阶主成分,忽略高阶主成分。
庄闪闪
2021/04/09
1.8K0
高维数据的展示
降维方法分线性降维和非线性降维两大类,其中线性降维包括主成分分析PCA,多为尺度分析MDS,非矩阵分解NMF等;非线性方法包括等距特征映射和局部线性嵌套,tSNE等。
爱学习的小明明
2020/10/08
1.3K0
高维数据的展示
【R语言】factoextra生成发表级PCA主成分分析图(三)
观察仔细的小伙伴可能发现,在上面这张图里面有三个点比其他点要大一些,其实这三个点是三个组的中心点。那么我们怎么去除各组的中心点呢?其实只需要修改mean.poin这个参数就可以了
生信交流平台
2022/09/21
5570
【R语言】factoextra生成发表级PCA主成分分析图(三)
R语言PCA分析_r语言可视化代码
如果不对数据进行scale处理,本身数值大的基因对主成分的贡献会大。如果关注的是变量的相对大小对样品分类的贡献,则应SCALE,以防数值高的变量导入的大方差引入的偏见。但是定标(scale)可能会有一些负面效果,因为定标后变量之间的权重就是变得相同。如果我们的变量中有噪音的话,我们就在无形中把噪音和信息的权重变得相同,但PCA本身无法区分信号和噪音。在这样的情形下,我们就不必做定标。
全栈程序员站长
2022/11/07
2.8K0
R语言PCA分析_r语言可视化代码
PCA原理及实现-R
PCA是一种无参数的数据降维方法,常用的机器学习算法一种,这篇文章主要从PCA应用于解释两个方面介绍。关于PCA原理,详情这里
Jamesjin63
2022/10/25
4170
PCA原理及实现-R
主成分分析 factoextra
factoextra是一个R软件包,可以轻松提取和可视化探索性多变量数据分析的输出,其中包括: 主成分分析(PCA),用于通过在不丢失重要信息的情况下减少数据的维度来总结连续(即定量)多变量数据中包含的信息。 对应分析(CA),它是适用于分析由两个定性变量(或分类数据)形成的大型列联表的主成分分析的扩展。 多重对应分析(MCA),它是将CA改编为包含两个以上分类变量的数据表格。 多因素分析(MFA)专用于数据集,其中变量按组(定性和/或定量变量)组织。 分层多因素分析(HMFA):在数据组织为分
用户1359560
2018/08/27
1.9K0
主成分分析  factoextra
R语言学习笔记-Day08
获得探针ID与序列——> //读取gtf文件
用户11190095
2024/07/17
1980
探索TCGA的临床特征分组——做差异分析前你有没有忘记它
上次我们说到把代谢基因做差异分析,由于TCGA中上传整理的并不是严格的tumor-normal实验设计,我们前期一直探索的LAML数据,就是没有normal样本的,那么就得选取别的分组做差异分析。而在差异分析前不能忘记的就是——再次强调表达量矩阵分析一定要三张图,根据老师的要求先尝试质控三张图的pca图,我们最关心的生存结局,在这个时候就是没有显著差异的——这时我们会很自然地想到用其他临床特征来分组。
生信菜鸟团
2022/10/31
1.6K0
探索TCGA的临床特征分组——做差异分析前你有没有忘记它
【R语言】factoextra生成发表级PCA主成分分析图(二)
主要讲了如何展示样本的主成分分析结果,即样本在新的空间中的分布情况,便于查看样本分群的结果。
生信交流平台
2022/09/21
7470
【R语言】factoextra生成发表级PCA主成分分析图(二)
PCA-弱水三千,取哪一瓢饮?
Rplot_FVIZ.png可以很明显的看到,第一个主成分就把我们的NSCLC和SCLC区分的还不错 更多完整的PCA教程看群主之前的推文:
生信技能树
2019/05/23
1.2K0
GEO数据分析流程之芯片3
三周合计15天的数据挖掘授课学员一点一滴整理的授课知识点笔记哦,还有互动练习题哈,欢迎大家点击文末的阅读原文去关注我们学员的公众号哦!
生信菜鸟团
2024/06/28
780
GEO数据分析流程之芯片3
R语言PCA可视化3D版
之前详细介绍了R语言中的主成分分析,以及超级详细的主成分分析可视化方法,主要是基于factoextra和factoMineR两个神包。
医学和生信笔记
2023/02/14
5810
R语言PCA可视化3D版
聚类算法之PCA与tSNE
没有体现任何的基因差异或者样本聚类(热图中的聚类是自然层次聚类),可以看到样本名都是无规律的交叉显示
生信技能树jimmy
2020/03/31
3.6K0
基于基因集的样品队列分组之PCA
那么,对于大样品队列的转录组,很多时候是没有已知的合理的分组, 这个时候会人为的去分组后看队列异质性,比如根据免疫高低进行分组。
生信技能树
2022/03/03
1.2K1
基于基因集的样品队列分组之PCA
奇怪的转录组差异表达矩阵之实验分组
使用RNA-Seq分析肺癌患者原发肿瘤中的基因表达差异,比较了有脑转移和没有脑转移的两组患者,以寻找不同表达的基因和潜在的信号通路
生信菜鸟团
2023/09/09
4630
奇怪的转录组差异表达矩阵之实验分组
推荐阅读
相关推荐
R语言主成分分析可视化(颜值高,很详细)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验