点击关注,桓峰基因

桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下:

FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色
FigDraw 2. SCI 文章绘图必备 R 语言基础
FigDraw 3. SCI 文章绘图必备 R 数据转换
FigDraw 4. SCI 文章绘图之散点图 (Scatter)
FigDraw 5. SCI 文章绘图之柱状图 (Barplot)
FigDraw 6. SCI 文章绘图之箱线图 (Boxplot)
FigDraw 7. SCI 文章绘图之折线图 (Lineplot)
FigDraw 8. SCI 文章绘图之饼图 (Pieplot)
FigDraw 9. SCI 文章绘图之韦恩图 (Vennplot)
FigDraw 10. SCI 文章绘图之直方图 (HistogramPlot)
FigDraw 11. SCI 文章绘图之小提琴图 (ViolinPlot)
FigDraw 12. SCI 文章绘图之相关性矩阵图(Correlation Matrix)
FigDraw 13. SCI 文章绘图之桑葚图及文章复现(Sankey)
FigDraw 14. SCI 文章绘图之和弦图及文章复现(Chord Diagram)
FigDraw 15. SCI 文章绘图之多组学圈图(OmicCircos)
FigDraw 16. SCI 文章绘图之树形图(Dendrogram)
FigDraw 17. SCI 文章绘图之主成分绘图(pca3d)


这期介绍R语言中pca3d包能帮你快速制作2D和3D的PCA图,一个包帮你解决PCA分析问题!原理不多说,直接上分析,高端大气上档次的图表,完全满足您高端的文章!

前言

主成分分析(Principal Component Analysis,PCA)是一种无监督学习的多元统计分析方法。PCA分析的主要原理是将高维数据投影到较低维空间,提取多元事物的主要因素,揭示其本质特征。它可以高效地找出数据中的主要部分,将原有的复杂数据降维处理。PCA分析被广泛应用于很多领域,比如理论物理学、气象学、心理学、生物学、化学、工程学等。

软件安装

R语言中pca3d快速制作2D和3D的PCA图,安装如下:

if(!require(rgl))install.packages("rgl")
if(!require(pca3d))install.packages("pca3d")

数据读取

载入自带的测试数据,数据是三组个体血清代谢产物的相对丰度:

Description Relative abundances of metabolites from serum samples of three groups of individuals Details A data frame with 136 observations on 425 metabolic variables. Serum samples from three groups of individuals were compared: tuberculin skin test negative (NEG), positive (POS) and clinical tuberculosis (TB).

library(rgl)
library(pca3d)data(metabo)
dim(metabo)  #数据集包含136行和424列
## [1] 136 424
table(metabo[, 1])  #展示分组信息
##
## NEG POS  TB
##  46  46  44

例子实操

1. 绘制2D的PCA图

数据选用所有的行及除第一列的数据(第一列为分组信息)

pca <- prcomp(metabo[, -1], scale. = TRUE)
pca2d(pca, group = metabo[, 1])

2. 制作3D的PCA图

同时3D的PCA图通过点击鼠标可以进行翻转等不同平面的操作

pca3d(pca, group = metabo[, 1])
## [1] 0.3439618 0.4500414 0.2818377
## Creating new device

3. 3D的PCA图增加椭圆

pca3d(pca, group = metabo[, 1], show.ellipses = TRUE, ellipse.ci = 0.75, show.plane = FALSE)
## [1] 0.3439618 0.4500414 0.2818377

4. 3D的PCA图形元素美化

3D的PCA可以通过改变背景,线图及点的方式呈现更加绚丽的图片

pca3d(pca, group = metabo[, 1], fancy = TRUE, bg = "black", show.group.labels = TRUE,axes.color = "white", new = TRUE)
## [1] 0.3439618 0.4500414 0.2818377
## Creating new device

软件包里面自带的例子,我这里都展示了一遍为了方便大家选择适合自己的图形,另外需要代码的将这期教程转发朋友圈,并配文“学生信,找桓峰基因,铸造成功的你!”即可获得!

桓峰基因,铸造成功的您!

有想进生信交流群的老师可以扫最后一个二维码加微信,备注“单位+姓名+目的”,有些想发广告的就免打扰吧,还得费力气把你踢出去!

References:

Weiner J 3rd, Parida SK, Maertzdorf J, Black GF, Repsilber D, et al. (2012) Biomarkers of Inflammation, Immunosuppression and Stress Are Revealed by Metabolomic Profiling of Tuberculosis Patients. PLoS ONE 7(7): e40221. doi:10.1371/journal.pone.0040221

FigDraw 17. SCI 文章绘图之主成分绘图(pca3d)相关推荐

  1. FigDraw 20. SCI文章中绘图之马赛克图 (mosaic)

    点击关注,桓峰基因 桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI ...

  2. FigDraw 22. SCI文章中绘图之核密度及山峦图 (ggridges)

    点击关注,桓峰基因 桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI ...

  3. FigDraw 21. SCI文章中绘图之三维散点图 (plot3D)

    点击关注,桓峰基因 桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI ...

  4. FigDraw 24. SCI文章中绘图二维直方图及组合图

    点击关注,桓峰基因 桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI ...

  5. FigDraw 25. SCI文章中绘图二维密度图及组合图

    点击关注,桓峰基因 桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI ...

  6. FigDraw 26. SCI文章中绘图词云图 (wordcloud)

    点击关注,桓峰基因 桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI ...

  7. FigDraw 13. SCI 文章绘图之桑葚图及文章复现(Sankey)

    点击关注,桓峰基因 桓峰基因 生物信息分析,SCI文章撰写及生物信息基础知识学习:R语言学习,perl基础编程,linux系统命令,Python遇见更好的你 127篇原创内容 公众号 桓峰基因公众号推 ...

  8. FigDraw 11. SCI 文章绘图之小提琴图 (ViolinPlot)

    桓峰基因公众号推出基于R语言绘图教程并配有视频在线教程,目前整理出来的教程目录如下: FigDraw 1. SCI 文章的灵魂 之 简约优雅的图表配色 FigDraw 2. SCI 文章绘图必备 R ...

  9. FigDraw 14. SCI 文章绘图之和弦图及文章复现(Chord Diagram)

    点击关注,桓峰基因 桓峰基因 生物信息分析,SCI文章撰写及生物信息基础知识学习:R语言学习,perl基础编程,linux系统命令,Python遇见更好的你 128篇原创内容 公众号 桓峰基因公众号推 ...

最新文章

  1. PL/SQL developer连接oracle出现“ORA-12154:TNS:could not resolve the connect identifier specified”问题的解决
  2. sql 计算两个小数乘积_数学家是如何计算出π的?
  3. 编译boost相关文件
  4. BZOJ1439 : YY的问题
  5. mysql断电同步不起作用_mysql主从同步因断电产生的不能同步问题
  6. python logging mysql_Python 操作 MySQL 的正确姿势
  7. swagger的使用(com.spring4all)
  8. Javascript ES6 Set、Map、Proxy、Symbol
  9. 公基会考计算机知识,公基计算机基础知识汇总70.doc
  10. java线程冲突问题——不安全的线程例子
  11. java bean规范 is_深入了解JavaBean规范中的属性名和setter/getter方法
  12. php try catch 作用域,浅谈PHP中try{}catch{}的使用方法
  13. iapp退出软件按钮代码_推荐几款安卓手机开发的编程软件!
  14. 倒计时电路multisim10s_multisim10秒倒计时器
  15. Linux下C语言编程风格和规范
  16. vsftp创建虚拟账户
  17. excel怎么从身份证中提取性别?
  18. easyUI form
  19. 【转载】语音处理资源
  20. php 判断来源 微信客户端_使用PHP判断是否为微信、支付宝等移动设备访问代码...

热门文章

  1. python黑科技-五彩斑斓的黑
  2. 在Arduino 完成STM32板子的串口通信程序
  3. 仿小米商城注册登录 —— vue
  4. 利用Fiddler手机抓包对ONE APP网页爬虫实现电影资讯微信Java开发
  5. 基于JAVA手机电子商城计算机毕业设计源码+数据库+lw文档+系统+部署
  6. 电视android已停止运行是什么意思,智能电视提示应用停止运行,三种方法亲测有效!...
  7. 哪种性格的人,更适合转管理?
  8. Android 开发 Tip 3 -- that was originally added here
  9. Matlab实现 乘幂法反幂法
  10. Java死锁产生的四个条件