簡體   English   中英

如何確定使用R泛型時調用了哪個函數?

[英]How do I find out which function is called when using R generics?

如果我加載了raster類的軟件包,則?plot在幫助文件中為我提供了兩種方法( base繪圖和來自raster軟件包的繪圖功能)。

當我有一個R對象時,如何知道觸發了哪個繪圖功能?

具體來說,我有一個SpatialPolygonsDataFrame ,我正在尋找有關如何添加圖例等的文檔,但是我不知道從哪里開始尋找該函數。

查找可用的方法

> methods(plot)
 [1] plot,ANY,ANY-method                   
 [2] plot,Extent,missing-method            
 [3] plot,Raster,ANY-method                
 [4] plot,Raster,Raster-method             
 [5] plot,Spatial,missing-method           
 [6] plot,SpatialGrid,missing-method       
 [7] plot,SpatialLines,missing-method      
 [8] plot,SpatialMultiPoints,missing-method
 [9] plot,SpatialPixels,missing-method     
[10] plot,SpatialPoints,missing-method     
[11] plot,SpatialPolygons,missing-method   
[12] plot,VectorLayer,ANY-method           
[13] plot.acf*           
...

請注意,在methods()函數中介紹S4方法的methods() 使用以下命令查找相應的幫助頁面

?"plot,SpatialPolygons,missing-method"

如果方法不明顯,請嘗試selectMethod()並查看簽名表中的“ defined”條目:

> selectMethod("plot", c("SpatialPolygonsDataFrame", "missing"))
Method Definition:

function (x, y, ...) 
plot.SpatialPolygons(x, ...)
<environment: namespace:sp>

Signatures:
        x                          y        
target  "SpatialPolygonsDataFrame" "missing"
defined "SpatialPolygons"          "missing"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM