Dependency analysis on package ggrepel

General information

CRAN link link
Package version0.9.1
Number of strong dependencies39
Number of all dependencies117
Number of parent packages5
Max heaviness from parent packages21
Total heaviness from parent packages22
Number of parent packages (including Suggests and Enhances)16
Max co-heaviness from parent packages ("scales" and "ggplot2")13

Dependency heatmap

In the following dependency heatmap, rows are the parent packages of ggrepel and columns are the dependency packages that each parent package brings in. On the right side of the heatmap, there are three barplot annotations: 1. number of imported functions/S4 methods/S4 classes from parent packages; 2. number of dependency packages from each parent package; 3. heaviness of each parent package on ggrepel.

Adjust heatmap size:
Base packages Other packages Depends Imports Suggests utils methods grDevices stats graphics grid splines tools glue magrittr rlang R6 lifecycle digest tibble ellipsis fansi pillar pkgconfig vctrs cli crayon utf8 withr gtable farver labeling munsell RColorBrewer viridisLite colorspace isoband MASS mgcv scales nlme Matrix lattice stringi evaluate highr stringr yaml xfun jsonlite purrr knitr fastmap fs rappdirs tidyselect bslib htmltools jquerylib tinytex sass base64enc clipr prettyunits cpp11 brio callr desc pkgload praise processx ps waldo rprojroot rstudioapi diffobj rematch2 generics rmarkdown hms vroom tzdb bit64 progress bit ggplot2 beeswarm vipor usethis httr memoise pkgbuild rcmdcheck remotes roxygen2 rversions sessioninfo testthat curl gert gh whisker mime openssl cachem xopen brew commonmark xml2 askpass credentials sys zip gitcreds ini 0 10 20 Imported methods 0 20 40 60 Required packages 0 20 40 Heaviness from parents ggplot2 grid rlang Rcpp scales magrittr gridExtra stringr knitr dplyr rmarkdown prettydoc readr testthat ggbeeswarm devtools In total 39 packages are required directly or indirectly (117) when installing 'ggrepel' (0.9.1) Depends Imports Suggests Base packages that are required Recommended packages that are required Contributed packages that are required Packages that are required for installing 'ggrepel' Imported functions The whole namespace is imported Package is listed in 'Imports' but namespace is not imported


Dependency table

"Import" information is from the NAMESPACE file of ggrepel.

imports: number of imported functions/objects; importMethods: number of imported S4 methods; importClasses: number of imported S4 classes.

Required packages: number of strong dependency packages for each of the parent package (or in other words, number of dependency packages the parent package brings in).

Heaviness from parent on ggrepel: number of required packages that can be reduced if moving parent package to Suggests of ggrepel.

Parent package Field imports importMethods importClasses Required packages Heaviness from parent on ggrepel
ggplot2 Depends The whole set of functions/methods/classes from parent package is imported to the namespace of ggrepel. 37 21
Rcpp Imports The whole set of functions/methods/classes from parent package is imported to the namespace of ggrepel. 2 1
grid Imports 21 0 0 0 0
rlang Imports 1 0 0 1 0
scales Imports Parent package is listed in Imports of ggrepel but no object from parent package is imported. 15 0
devtools Suggests No object is imported into the namespace of ggrepel. 76 56
prettydoc Suggests No object is imported into the namespace of ggrepel. 28 20
rmarkdown Suggests No object is imported into the namespace of ggrepel. 27 19
testthat Suggests No object is imported into the namespace of ggrepel. 36 16
readr Suggests No object is imported into the namespace of ggrepel. 31 12
knitr Suggests No object is imported into the namespace of ggrepel. 12 8
dplyr Suggests No object is imported into the namespace of ggrepel. 20 4
stringr Suggests No object is imported into the namespace of ggrepel. 7 3
ggbeeswarm Suggests No object is imported into the namespace of ggrepel. 40 3
gridExtra Suggests No object is imported into the namespace of ggrepel. 5 1
magrittr Suggests No object is imported into the namespace of ggrepel. 0 0

The following table lists pairs of parent packages with co-heaviness larger than 10. The co-heaviness measures the number of additional dependencies that two parent packages simultaneously import and are only imported by the two parents.

Note the co-heaviness from parents can be always easily observed in the dependency heatmap.

Parent 1 Parent 2 Co-heaviness on ggrepel Co-heaviness as Jaccard coeffcient
ggplot2 scales 13 0.382

Analysis was done with pkgndep.