将hexbinplot保存到对象

时间:2018-02-06 16:29:22

标签: r ggplot2 graphics lattice

有没有办法将hexbin数据图分配给对象?

library(hexbin)
myData <- hexbin(rnorm(100),rnorm(100), xbins=50) 
myPlot <- plot(myData)

我希望显示情节被抑制,对象myPlot包含它。 但是,调用myPlot只会打印出一个列表。

1 个答案:

答案 0 :(得分:1)

这是因为调用myPlot只会调用print.list(myPlot) 因为plot(myData)只返回一个列表。这对于lattice和ggplot2有用的唯一原因是因为它们为从print()方法返回的对象定义了plot()个方法。

我不会发现存储myData对象和在需要生成图表时调用plot()的任何内在错误。是否有任何用例需要自动打印提供的特定功能?

如果您希望以网格对象的形式输出,可以尝试使用grid::grid.grab()

myData <- hexbin(rnorm(100),rnorm(100)) 
plot(myData)
grobs <- grid::grid.grab()
str(grobs)

[1] "gTree" "grob"  "gDesc"