thackl / gggenomes

A grammar of graphics for comparative genomics
https://thackl.github.io/gggenomes/
Other
581 stars 64 forks source link

Package examples fail with: `Error in set_class(., "gggenomes_layout", "prepend")` #75

Closed iferres closed 3 years ago

iferres commented 3 years ago

Hi, I'm having an issue with the package with examples failing:

library(gggenomes)

# to inspect the example data shipped with gggenomes
data(package="gggenomes")

gggenomes(emale_genes, emale_seqs, emale_tirs, emale_ava) %>%
  add_feats(ngaros=emale_ngaros, gc=emale_gc) %>%
  add_sublinks(emale_prot_ava) %>%
  flip_by_links() +
  geom_feat(position="identity", size=6) +
  geom_seq() +
  geom_link(data=links(2)) +
  geom_bin_label() +
  geom_gene(aes(fill=name)) +
  geom_gene_tag(aes(label=name), nudge_y=0.1, check_overlap = TRUE) +
  geom_feat(data=feats(ngaros), alpha=.3, size=10, position="identity") +
  geom_feat_note(aes(label="Ngaro-transposon"), feats(ngaros),
      nudge_y=.1, vjust=0) +
  geom_ribbon(aes(x=(x+xend)/2, ymax=y+.24, ymin=y+.38-(.4*score),
      group=seq_id, linetype="GC-content"), feats(gc),
      fill="lavenderblush4", position=position_nudge(y=-.1)) +
  scale_fill_brewer("Genes", palette="Dark2", na.value="cornsilk3")
## Error in set_class(., "gggenomes_layout", "prepend") : 
##  3 arguments passed to 'class<-' which requires 2

This error is minimally reproduced as follows:

gggenomes(emale_genes, emale_seqs, emale_tirs, emale_ava)
## Error in set_class(., "gggenomes_layout", "prepend") : 
##  3 arguments passed to 'class<-' which requires 2

My session:

sessionInfo()
## R version 4.0.1 (2020-06-06)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Fedora 33 (Workstation Edition)

## Matrix products: default
## BLAS/LAPACK: /usr/lib64/libopenblas-r0.3.17.so

## locale:
##  [1] LC_CTYPE=es_UY.UTF-8       LC_NUMERIC=C               LC_TIME=es_UY.UTF-8        LC_COLLATE=es_UY.UTF-8     LC_MONETARY=es_UY.UTF-8   
##  [6] LC_MESSAGES=es_UY.UTF-8    LC_PAPER=es_UY.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=es_UY.UTF-8 LC_IDENTIFICATION=C       

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

## other attached packages:
## [1] profvis_0.3.7        magrittr_2.0.1       S4Vectors_0.28.1     BiocGenerics_0.36.1  gggenomes_0.9.3.9000 snakecase_0.11.0    
##  [7] jsonlite_1.7.2       tibble_3.1.4         thacklr_0.0.0.9000   tidyr_1.1.3          stringr_1.4.0        readr_2.0.1         
## [13] purrr_0.3.4          gggenes_0.4.1        ggplot2_3.3.5        dplyr_1.0.7         

## loaded via a namespace (and not attached):
## [1] pillar_1.6.2      compiler_4.0.1    tools_4.0.1       digest_0.6.27     ggfittext_0.9.1   lifecycle_1.0.0   gtable_0.3.0     
##  [8] pkgconfig_2.0.3   rlang_0.4.11      cli_3.0.1         rstudioapi_0.13   DBI_1.1.1         yaml_2.2.1        fastmap_1.1.0    
## [15] withr_2.4.2       htmlwidgets_1.5.3 generics_0.1.0    vctrs_0.3.8       hms_1.1.0         grid_4.0.1        tidyselect_1.1.1 
## [22] glue_1.4.2        R6_2.5.1          fansi_0.5.0       tzdb_0.1.2        htmltools_0.5.2   scales_1.1.1      ellipsis_0.3.2   
## [29] assertthat_0.2.1  colorspace_2.0-2  utf8_1.2.2        stringi_1.7.4     munsell_0.5.0     crayon_1.4.1     

Great package btw, thanks!

iferres commented 3 years ago

Nevermind, I just updated ggplot2 and now it works. Sorry!

thackl commented 3 years ago

No problem! I like issues that solve themselves ;)