2016-11-16 65 views
1

我想在自己的函数中封装图表创建,最终创建一个ggplot对象。这是为了减少代码重复。由于各种图表可能有不同的要求,因此有几个参数。将未知数量的“geom_text”传递给ggplot作为函数参数

不同图表之间的一种变化可能会显示一个或多个geom_text集合。我曾天真地以为,因为+操作由ggplot超载,我或许可以称之为sum()geom_text对象名单如下:

outputPlot <- basePlot + 
    geomBar + 
    sum(geomTextList) + 
    titles + 
    theme + 
    yScale + 
    plotFill + 
    if (coordFlip) { coord_flip() } else { NULL } 

然而,这将返回Error in sum(geomTextList) : invalid 'type' (list) of argument

有没有人有任何想法,我怎么能够实现这一目标,或者我只是拍摄月球?这也最终延伸到具有的geom_bar清单,以及如果需要的话...

+1

与322代表你应该知道比在这里发布w/out给出一个好的'dput' –

+0

可以做到,但说实话,更多的是期望沿着“不可能,没有这样设计”的答案。 – Serenthia

回答

1

无需sum:GGPLOT2可以处理层的列表,以便以下应该工作:

baseplot + geomBar + geomtextList + … 
+0

我没有考虑过这个 - 会测试,谢谢! – Serenthia

+0

优秀,这个工程。感谢这样一个简单的解决方案。 – Serenthia

相关问题