遇到问题解决问题
hdWGCNA绘制图形报错,可能当前设置的内存已经不能满足绘图
WGCNA(Weighted Gene Co-expression Network Analysis)即加权 基因共表达网络分析,能帮助我们找到各方面相似的基因模块(module),探索基因网络与关注表型之间的关系,寻找核心基因。比如:不同器官或组织类型发育调控、同一组织不同发育调控、非生物胁迫不同时间点应答、病原菌侵染后不同时间点应答。而在单细胞数据中,细胞表达量矩阵理论上每个细胞就是一列,每一行为一个基因。所以理论上也可以使用单细胞表达量矩阵进行wgcna分析,但是由于单细胞表达量矩阵的稀疏性,必然是需要对wgcna算法进行一些调整,也就是我们在这里要给大家介绍的hdWGCNA,也称为scWGCNA。
hdWGCNA分析过程中HubGeneNetworkPlot函数可以绘制全部module中top hub gene
该函数取用户指定的前n个中心基因,以及其他随机选择的基因,并使用力导向图绘制算法构建联合网络。为了视觉清晰度,可以使用edge_prop参数对网络中的边数进行下采样。在以下示例中,我们可视化了每个模块的前3个中心基因和其他5个基因。运行示例如下:
HubGeneNetworkPlot( seurat_obj, n_hubs = 3, # hub基因数目 n_other=5, # 其他基因数目 edge_prop = 0.75, # 图中边的采样比例 mods = 'all' )(1)报错界面
Error in getGlobalsAndPackages(expr, envir = envir, globals = globals) : The total size of the 4 globals exported for future expression (‘FUN()’) is 6.04 GiB.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). The three largest globals are ‘FUN’ (6.04 GiB of class ‘function’), ‘modules’ (2.18 MiB of class ‘list’) and ‘edge_df’ (69.28 KiB of class ‘list’)(2)原因
那么如果遇到这个报错则说明你当前设置的内存已经不能满足用于绘制这张图形。我们可以适当提高内存额度。
(3)解决方法
# 例如将限制提高到 8 GiB(根据你的内存情况调整) options(future.globals.maxSize = 8 * 1024^3) # 8 GiB HubGeneNetworkPlot( seurat_obj, n_hubs = 3, # hub基因数目 n_other=5, # 其他基因数目 edge_prop = 0.75, # 图中边的采样比例 mods = 'all' ) # 绘制成功后,我们就可以得到如下图形