如何在R中编辑UpSetR包内的Make_size_plot()子函数?
修改UpSetR包内部子函数Make_size_plot()的简易方法
不用创建自定义包或复刻仓库,有两种简单方法可以修改upset()内部的Make_size_plot()子函数:
方法一:修改upset()函数副本的内部子函数
- 先把原
upset()函数复制到新变量中:
library(UpSetR) my_upset <- upset
- 查看
my_upset的函数体,找到内部定义Make_size_plot()的代码段,复制出来并按需求修改(比如调整条形图颜色、轴标签样式等)。 - 将修改后的
Make_size_plot()代码替换回my_upset的函数体,之后直接调用my_upset()就能使用修改后的可视化效果。
方法二:用trace()指定位置编辑子函数
直接用trace()的at参数定位到Make_size_plot()的定义位置,打开编辑器直接修改:
library(UpSetR) # 定位到upset函数第162行的子函数定义处,启动编辑器修改 trace(upset, edit = TRUE, at = list(c(162, 1)))
修改完成后,后续调用upset()时就会使用你编辑后的Make_size_plot()生成条形图。
内容的提问来源于stack exchange,提问作者Silvan
相关产品推荐
相关产品推荐

