如何修复rayshader中plot_gg的terra版本错误与stat(nlevel)弃用警告?
问题解决方案
1. 升级terra包到要求版本
当前terra包版本(1.6.7)低于rayshader v0.24.10要求的≥1.6.16,执行以下命令完成升级:
install.packages("terra")
如果CRAN镜像提供的版本仍不满足要求,可从开发者仓库安装最新版:
# 未安装remotes包时先执行此步 install.packages("remotes") remotes::install_github("rspatial/terra")
安装完成后重启R会话,重新加载包即可。
2. 替换弃用的stat(nlevel)为after_stat(nlevel)
ggplot2 3.4.0及以上版本中,stat(nlevel)语法已被弃用,需改用after_stat(nlevel)引用统计变换后的变量。修改后的完整代码如下:
library(rayshader) # latest version 0.24.10 library(ggplot2) # 3D plotting with rayshader and ggplot2 ggdiamonds = ggplot(diamonds) + stat_density_2d(aes(x = x, y = depth, fill = after_stat(nlevel)), geom = "polygon", n = 200, bins = 50, contour = TRUE) + facet_wrap(clarity~.) + scale_fill_viridis_c(option = "A") par(mfrow = c(1, 2)) plot_gg(ggdiamonds, width = 5, height = 5, raytrace = FALSE, preview = TRUE)
内容的提问来源于stack exchange,提问作者Ed_Gravy
相关产品推荐
相关产品推荐

