Dependency analysis on package ggsci

General information

CRAN link link
Package version2.9
Number of strong dependencies38
Number of all dependencies61
Number of parent packages3
Max heaviness from parent packages22
Total heaviness from parent packages22
Number of parent packages (including Suggests and Enhances)7
Max co-heaviness from parent packages ("ggplot2" and "scales")15

Dependency heatmap

In the following dependency heatmap, rows are the parent packages of ggsci 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 ggsci.

Adjust heatmap size:
Base packages Other packages Imports Suggests utils stats methods grDevices graphics grid splines tools glue magrittr R6 rlang farver labeling lifecycle munsell RColorBrewer viridisLite colorspace digest gtable isoband MASS mgcv scales tibble withr nlme Matrix ellipsis fansi pillar pkgconfig vctrs lattice cli crayon utf8 stringr stringi evaluate highr yaml xfun plyr Rcpp bslib htmltools jquerylib jsonlite knitr tinytex sass base64enc fastmap fs rappdirs 0 1 2 3 Imported methods 0 10 20 30 Required packages 0 10 20 Heaviness from parents grDevices scales ggplot2 gridExtra reshape2 knitr rmarkdown In total 38 packages are required directly or indirectly (61) when installing 'ggsci' (2.9) Imports Suggests Base packages that are required Recommended packages that are required Contributed packages that are required Packages that are required for installing 'ggsci' Imported functions


Dependency table

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

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 ggsci: number of required packages that can be reduced if moving parent package to Suggests of ggsci.

Parent package Field imports importMethods importClasses Required packages Heaviness from parent on ggsci
ggplot2 Imports 3 0 0 37 22
grDevices Imports 3 0 0 0 0
scales Imports 1 0 0 15 0
rmarkdown Suggests No object is imported into the namespace of ggsci. 27 19
knitr Suggests No object is imported into the namespace of ggsci. 12 8
reshape2 Suggests No object is imported into the namespace of ggsci. 10 6
gridExtra Suggests No object is imported into the namespace of ggsci. 5 1

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 ggsci Co-heaviness as Jaccard coeffcient
scales ggplot2 15 0.405

Analysis was done with pkgndep.