Skip to main content
 首页 » 编程设计

python之Rpy2 完全支持 ggplot2.layer 吗

2025年05月04日6lyhabc

我正在尝试在通过 Rpy2 绘制的图形中使用 ggplot2 layer,我没有在手册 (http://rpy.sourceforge.net/rpy2/doc-2.1/html/graphics.html) 中看到描述

调用 layer 函数的正确形式是否如下?来自 R,

p <- p + layer(data=df, mapping=aes(x=x, y=y, label=foo), geom='text', hjust=1, vjust=1) 

应该在 Rpy2 中:

p += ggplot2.layer(**{"data": df, 
                      "mapping": ggplot2.aes_string(x="x", y="y", label="foo"), 
                      "geom": "text"}) 
                      "hjust": 1, 
                      "vjust": 1}) 

当我尝试这个时,我得到如下错误:

TypeError: new() got an unexpected keyword argument 'vjust' 

和:

TypeError: new() got an unexpected keyword argument 'mapping' 

只是想知道这是否是将 layer 添加到 Rpy2 绘图的正确方法,或者是否有不同的习惯用法?谢谢。

请您参考如下方法:

有不同的方法(在评论中回答)。

除此之外,rpy2 中存在一个错误,阻止指定 layer() 的参数参数,现在(希望)在两个分支 version_2.3.x 中修复(将包含在版本 2.3.3) 和 default 中。