为了生成几个具有相同风格的箱线图,我对boxplot函数进行了相同的调用,如下面的最小示例所示:
boxplot(Petal.Length ~ Species, iris, ylim=c(0,10))
abline(h=8)
legend('topleft',levels(iris$Species))
boxplot(Sepal.Length ~ Species, iris, ylim=c(0,10))
abline(h=8)
legend('topleft',levels(iris$Species))
我想通过避免代码重复来保持代码的可读性和可维护性。
因此,我想到使用装饰器,如
How customize a plot inside a R function which belong to a package?或
Writing a decorator for R functions或
https://weinstockjosh.com/post/2016-06-08-decorators-in-r/
然而,我找不到一种方法来封装/ Package 在(box)plot
函数中用作参数的公式,这是一种漂亮的语法糖。
我在哪里可以找到R
提供的合适的构造来保持代码的可读性和可维护性?
3条答案
按热度按时间bybem2ql1#
使用
lapply
和reformulate
koaltpgm2#
define函数创建箱线图
每个变量调用函数
vh0rcniy3#
我为面临同样问题的人找到了另一种选择:
我不得不承认它比原始解决方案长了两行,但是当在不同的文件中重用解决方案片段时,它可能会有优势。