Ошибка nullGrob при печати в ggplot2 / metR - PullRequest
1 голос
/ 05 апреля 2020

Я строю (используя ggplot2) серию 3D-данных в качестве 2D-графика поверхности с цветовой шкалой для вертикальной оси. Я также рисую контуры и метки контуров (используя metR).

Я столкнулся с некоторыми данными, которые приводят к сбою графика с ошибкой Error in nullGrob() : could not find function "nullGrob".

Я полагаю, что ошибка связана с взаимодействием между geom_raster и geom_text_contour; при попытке всех комбинаций различных geom, только те, которые содержат и geom_raster, и geom_text_contour, терпят неудачу.

Кроме того, если я удалю ограничение expand=expansion(mult = 0, add = 0), ошибка не

Что это за ошибка, и как ее устранить go?

library(ggplot2)
library(metR)
library(readr)

df <- read_tsv("https://pastebin.com/raw/dJ7gM496")

ggplot(df, aes(x = x, y = y, z = z, fill = z)) + 
  geom_raster(interpolate=TRUE) +
  geom_contour2(color = "black", alpha=0.5) +
  geom_text_contour(aes(z = z)) +
  scale_x_continuous(expand=expansion(mult = 0, add = 0)) + 
  scale_y_continuous(expand=expansion(mult = 0, add = 0))

sessionInfo ()

R version 3.6.3 (2020-02-29)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)

Matrix products: default

locale:
[1] LC_COLLATE=English_Australia.1252  LC_CTYPE=English_Australia.1252    LC_MONETARY=English_Australia.1252 LC_NUMERIC=C                      
[5] LC_TIME=English_Australia.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] readr_1.3.1   metR_0.6.0    ggplot2_3.3.0

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.4        pillar_1.4.3      compiler_3.6.3    plyr_1.8.6        tools_3.6.3       digest_0.6.25     lubridate_1.7.4  
 [8] memoise_1.1.0     lifecycle_0.2.0   tibble_3.0.0      gtable_0.3.0      checkmate_2.0.0   pkgconfig_2.0.3   rlang_0.4.5      
[15] cli_2.0.2         rstudioapi_0.11   curl_4.3          withr_2.1.2       dplyr_0.8.5       stringr_1.4.0     vctrs_0.2.4      
[22] hms_0.5.3         grid_3.6.3        tidyselect_1.0.0  glue_1.3.2        data.table_1.12.8 R6_2.4.1          fansi_0.4.1      
[29] purrr_0.3.3       farver_2.0.3      magrittr_1.5      backports_1.1.5   scales_1.1.0      ellipsis_0.3.0    assertthat_0.2.1 
[36] colorspace_1.4-1  labeling_0.3      stringi_1.4.6     munsell_0.5.0     crayon_1.3.4     

1 Ответ

0 голосов
/ 06 апреля 2020

Как сообщает @Tjebo, явное присоединение пакета grid решило проблему; nullGrob() - это функция в этом пакете .

Проблема заключалась в том, что я использовал мультиплотную функцию . Функция включает в себя явный вызов grid. Когда я играл с некоторыми из своих графиков и перезагружал рабочие пространства, я заканчивал тем, что играл на своем графике до загрузки мультиплот, и поэтому у меня не было загружено grid.

sessionInfo() после включения library(grid) is

R version 3.6.3 (2020-02-29)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)

Matrix products: default

locale:
[1] LC_COLLATE=English_Australia.1252  LC_CTYPE=English_Australia.1252    LC_MONETARY=English_Australia.1252 LC_NUMERIC=C                      
[5] LC_TIME=English_Australia.1252    

attached base packages:
[1] grid      stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] readr_1.3.1   metR_0.6.0    ggplot2_3.3.0

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.4        pillar_1.4.3      compiler_3.6.3    plyr_1.8.6        tools_3.6.3       digest_0.6.25     lubridate_1.7.4  
 [8] memoise_1.1.0     lifecycle_0.2.0   tibble_3.0.0      gtable_0.3.0      checkmate_2.0.0   pkgconfig_2.0.3   rlang_0.4.5      
[15] cli_2.0.2         rstudioapi_0.11   curl_4.3          withr_2.1.2       dplyr_0.8.5       stringr_1.4.0     vctrs_0.2.4      
[22] hms_0.5.3         tidyselect_1.0.0  glue_1.3.2        data.table_1.12.8 R6_2.4.1          fansi_0.4.1       purrr_0.3.3      
[29] farver_2.0.3      magrittr_1.5      backports_1.1.5   scales_1.1.0      ellipsis_0.3.0    assertthat_0.2.1  colorspace_1.4-1 
[36] labeling_0.3      stringi_1.4.6     munsell_0.5.0     crayon_1.3.4   
...