R的绘图功能非常适用于数据探索,因为它经常具有非常智能的默认值。例如,在使用公式进行绘图时,坐标轴的标签是从该公式派生的。换句话说,以下两个调用会产生相同的输出:
plot(x~y)
plot(x~y, xlab="x", ylab="y")
有没有办法获得类似的“智能自动命名”?例如,我想要调用:
plot(x~y, main=<something>)
同时产生与调用相同的输出
plot(x~y, main="plot(x~y)")
在某种内省机制下,<something>
插入了所使用的调用。
在R中有没有这样的工具,可以通过某种标准机制或外部包来实现呢?
编辑:有人建议将公式指定为字符串,并将其作为参数提供给formula()
调用以及main
。这很有用,但它会忽略影响图形的参数,例如使用数据子集。更详细地说,我想要:
x<-c(1,2,3)
y<-c(1,2,3)
z<-c(0,0,1)
d<-data.frame(x,y,z)
plot(x~y, subset(d, z==0), main=<something>)
为了达到相同的效果,需要:
plot(x~y, subset(d, z==0), main="plot(x~y, subset(d, z==0))")
paste(main, collapse="\n")
可以发挥作用的地方? - Josh O'Brien