Python 为什么rpy2.robjects.lib.grid.viewport()返回ListVector,;但不是视口?

Python 为什么rpy2.robjects.lib.grid.viewport()返回ListVector,;但不是视口?,python,ggplot2,rpy2,Python,Ggplot2,Rpy2,我尝试使用rpy2.robjects.lib.grid.viewport()在一个图中绘制多个子图,代码如下: from rpy2.robjects.lib import grid from rpy2.robjects.packages import importr import rpy2.robjects.lib.ggplot2 as ggplot2 from rpy2 import robjects dataf=robjects.DataFrame({'year':IntVector([20

我尝试使用
rpy2.robjects.lib.grid.viewport()
在一个图中绘制多个子图,代码如下:

from rpy2.robjects.lib import grid
from rpy2.robjects.packages import importr
import rpy2.robjects.lib.ggplot2 as ggplot2
from rpy2 import robjects
dataf=robjects.DataFrame({'year':IntVector([2000,2001,2002,2001,2002]),
      'pop':IntVector([1.5,1.7,3.6,2.4,2.9]),'GDP':IntVector([4,5.3,6,7,8])})
grid.newpage()
lt=grid.layout(1,2)
vp=grid.viewport(layout=lt)
print(type(vp))
vp.push()
gp=ggplot2.ggplot(dataf)
vp = grid.viewport(**{'layout.pos.col':1, 'layout.pos.row': 1})
pp=gp+ggplot2.aes_string(x='pop',y='GDP')+ggplot2.geom_point()
pp.plot(vp=vp)
vp = grid.viewport(**{'layout.pos.col':2, 'layout.pos.row': 1})
pp=gp+ggplot2.aes_string(x='pop',y='GDP',col='factor(year)')+ggplot2.geom_point()
pp.plot(vp=vp)
但是在执行“vp.push()”时出现了一个错误。错误如下:

回溯(最近一次呼叫最后一次): 文件“F:\pythonspace\pythontoR2.py”,第15行,在 副总裁 AttributeError:“ListVector”对象没有属性“push”


我正在使用python3.4和R3.2.1,rpy2.7.6。

这似乎是
rpy2.robjects.lib.grid中的一个疏忽

试着替换

vp=grid.viewport(layout=lt)

(并可能在rpy2的错误跟踪器上提交错误报告)

注意:此文件作为,并在回购协议中进行了修复(将包含在rpy2 2.8.0版中)

vp=grid.Viewport(grid.viewport(layout=lt))