BioF3 FigCode · SCI 绘图代码集
MOFA 因子载荷(MOFA Factor Loadings)
分类:降维可视化 | 依赖包:MOFA2、ggplot2、cowplot
解决的生物学问题
提取出的潜在因子捕获了哪些组学层的变异?哪个因子和我的临床表型相关?
应用场景
- 多组学无监督整合
- 稀疏因子分解
- 隐藏亚型发现
- 组学之间共享/独有变异分解
输入数据格式
MOFA 对象(MOFA2::run_mofa 输出)
关键参数
- factors(要展示的因子索引)
- covariate1(连续协变量)
- group_by(分组着色)
- plot_variance_explained 看因子覆盖度
快速开始
1. 直接在线运行
打开 FigCode 在线绘图,点击本工具卡片的"在线绘图"按钮即可用内置示例数据出图,零环境配置。
2. 本地复现
下载脚本和示例数据,本地 RStudio 运行:
# 下载
curl -O https://<your-site>/figcode/scripts/mofa-factors.R
curl -O https://<your-site>/figcode/data/mofa-factors.csv
3. 安装依赖
# CRAN 包
install.packages(c("MOFA2", "ggplot2", "cowplot"))
# Bioconductor 包(如需)
# BiocManager::install(c())
完整代码
library(MOFA2)
library(ggplot2)
# --- Demo: 用包内置示例 ---
filepath <- system.file("extdata", "test_model.hdf5", package = "MOFA2")
mofa <- load_model(filepath)
# --- Variance explained per factor / view ---
p1 <- plot_variance_explained(
mofa,
x = "view", y = "factor"
) + ggtitle("Variance Explained (R²)")
# --- Factor values colored by sample group ---
p2 <- plot_factor(
mofa,
factors = c(1, 2),
color_by = "group"
) + ggtitle("MOFA Factor Values")
cowplot::plot_grid(p1, p2, ncol = 2, rel_widths = c(1, 1.2))
替换为自己的数据
脚本中以 # --- Demo data --- 标注的段落是示例数据生成代码。替换为自己的数据时,保持列名一致即可:
- 输入格式:MOFA 对象(MOFA2::run_mofa 输出)
- 使用
read.csv()/readRDS()读取本地文件
延伸阅读
- 相关教程:MOFA 因子载荷 完整流程
- 出现 bug?欢迎在 FigCode 页面 点击对应卡片,在评论区留言。