R:as.double(y)出错:无法强制类型' S4'到矢量类型' double' - 栅格数据

时间:2016-10-07 06:49:26

标签: r plot raster r-raster

我在Studio中使用光栅.tif图片。我已经看过一个关于使用下面的代码绘制栅格的教程,但它对我不起作用。我收到错误:

  

as.double(y)出错:无法强制输入' S4'到' double'

的矢量

我已加载必要的包(rasterrgdal) 我也尝试加载arulesViz,但得到相同的错误

YIELD <- raster("//Users//DevinOsborne//Desktop//Thesis//QGIS projects //Project//Rasters//Images//Yield_wheat.tif")

plot(YIELD,main= "Yield map")

2 个答案:

答案 0 :(得分:0)

在自定义R程序包中使用rgdal时遇到类似的问题。 通过加载sp库为我解决了此错误。单独运行脚本时不会出现问题,但是一旦包含在软件包中,使用plot()时我就会遇到相同的错误:

  

as.double(y)中的错误:无法将类型'S4'强制转换为类型的向量   “双”

已通过在NAMESPACE文件中添加import("sp")并将“ sp”添加到Description文件中的“导入”列表来解决此问题。

很遗憾,我找不到所需的sp函数,因此我在NAMESPACE文件中使用了完全导入而不是更具针对性的importFrom()

答案 1 :(得分:0)

要扩展@ Chelmy88的答案,请尝试sp::plot() 首先,您需要sp软件包; install.packages("sp")

我能够使用graphics::plot()

重新创建您的错误

我相信当您加载rastersp时也会被加载。