如何将plot
分配给变量并在以后阶段将其打印出来?
使用格子xyplot
,您可以轻松完成:
s <- xyplot((1:10)^2~1:10)
s
但不是基础plot
a <- plot((1:10)^2,1:10)
我得到的是函数中的barplot
:
funbar <- function(x) { barplot(x) }
variab <- funbar(1:10) # this plots the data
所以我希望通过调用variab
实际上我在函数中有其他图形函数,如下所示:
funbar <- function(x) { barplot(x); points(....); text(....) }
我在这个明显的部分找不到任何信息。 plot=FALSE
在这里没有帮助。
编辑:以下是从?barplot
require(grDevices) # for colours
tN <- table(Ni <- stats::rpois(100, lambda = 5))
r <- barplot(tN, col = rainbow(20))
编辑2:回答Josh问题,为什么我想这样做。例如:
layout(matrix(1:2, nrow=2, ncol=1))
tN <- table(Ni <- stats::rpois(100, lambda = 5))
r <- barplot(tN)
tN <- table(Ni <- stats::rpois(100, lambda = 5))
r <- barplot(tN)
答案 0 :(得分:2)
也许这可以通过xy.coords
来解决:
a <- xy.coords((1:10)^2,1:10) #plots nothing
可以稍后绘制:
plot(a)
我通过检查plot.default
的代码来实现这个想法。
至于barplot
s,也许rect
函数会完成类似的事情(因为这似乎是barplot.default
正在做的事情的核心)。