Giter VIP home page Giter VIP logo

samuel-marsh / sccustomize Goto Github PK

View Code? Open in Web Editor NEW
178.0 3.0 19.0 283.69 MB

R package with collection of functions created and/or curated to aid in the visualization and analysis of single-cell data using R.

Home Page: https://samuel-marsh.github.io/scCustomize/

License: GNU General Public License v3.0

R 100.00%
customization ggplot2 seurat single-cell single-cell-genomics single-cell-rna-seq visualization scrna-seq

sccustomize's People

Contributors

maelle avatar mojaveazure avatar samuel-marsh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

sccustomize's Issues

Clustered Dotplot

  • fix percent mat subset when NAs present
  • Fix expression color selection default
  • Domino plot annotation
  • Add vignette and rebuild

UPDATE
domino plot on hold for now. potentially revisit if requested or time to add.

DotPlot_scCustom do not plot meta data variables

Thank you for the Package!
The DotPlot_scCustom is not behaving as expected. Currenlty only genes can be plotted. Not the numeric variables in the meta data such as module scores in a seurat metadata. Seurat's Default DotPlot works same with the same synatx as shown in the code below

Looking at the source code, DotPlot use the Gene_Present function first to cross check the supplied list of 'features'.
features_list <- Gene_Present(data = seurat_object, gene_list = features,omit_warn = TRUE, print_msg = FALSE, case_check_msg = TRUE)[[1]]

> DotPlot_scCustom
function (seurat_object, features, colors_use = viridis_plasma_dark_high, 
    remove_axis_titles = TRUE, x_lab_rotate = FALSE, y_lab_rotate = FALSE, 
    facet_label_rotate = FALSE, flip_axes = FALSE, ...) 
{
    Is_Seurat(seurat_object = seurat_object)
    features_list <- Gene_Present(data = seurat_object, gene_list = features, 
        omit_warn = TRUE, print_msg = FALSE, case_check_msg = TRUE)[[1]]

However, Gene_Present function only checks for rownames of the Default Assay matrix in Seurat and do not look for meta data columns. (possible_features <- rownames(x = GetAssayData(object = data, assay = assay)))

> Gene_Present
function (data, gene_list, case_check = TRUE, case_check_msg = TRUE, 
    print_msg = TRUE, omit_warn = TRUE, return_none = FALSE, 
    seurat_assay = NULL) 
{
    accepted_types <- c("data.frame", "dgCMatrix", "dgTMatrix", 
        "tibble")
    if ((class(x = data)[[1]] == "Seurat")) {
        assay <- seurat_assay %||% DefaultAssay(object = data)
        possible_features <- rownames(x = GetAssayData(object = data, 
            assay = assay))

Using FetchData function from Seurat might be better as it already looks at both meta data and the assay matrix for the supplied vars. As to other object classes I do not have experience with them.

> head(pbmc3k.final[[]])
               orig.ident nCount_RNA nFeature_RNA seurat_annotations percent.mt RNA_snn_res.0.5 seurat_clusters
AAACATACAACCAC     pbmc3k       2419          779       Memory CD4 T  3.0177759               1               1
AAACATTGAGCTAC     pbmc3k       4903         1352                  B  3.7935958               3               3
AAACATTGATCAGC     pbmc3k       3147         1129       Memory CD4 T  0.8897363               1               1
AAACCGTGCTTCCG     pbmc3k       2639          960         CD14+ Mono  1.7430845               2               2
AAACCGTGTATGCG     pbmc3k        980          521                 NK  1.2244898               6               6
AAACGCACTGGTAC     pbmc3k       2163          781       Memory CD4 T  1.6643551               1               1

> DotPlot(pbmc3k.final, features = c("nCount_RNA","percent.mt"))
> pbmc3k.final <- AddModuleScore(pbmc3k.final, features = list(c("MRC1","CSF1R","CD68","CD14")), name = "Gene_Sig")
Warning: The following features are not present in the object: MRC1, not searching for symbol synonyms
> DotPlot(pbmc3k.final, features = c("Gene_Sig1","percent.mt"))
> DotPlot_scCustom(pbmc3k.final, features = c("Gene_Sig1","percent.mt"))
Error in Gene_Present(data = seurat_object, gene_list = features, omit_warn = TRUE,  : 
  No requested features found.
sessionInfo() output
> sessionInfo()
R version 4.2.0 (2022-04-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.6 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

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

other attached packages:
[1] scCustomize_0.7.0  Seurat_4.1.1       sp_1.4-7           SeuratObject_4.1.0

loaded via a namespace (and not attached):
  [1] utf8_1.2.2                  reticulate_1.25             tidyselect_1.1.2            htmlwidgets_1.5.4          
  [5] grid_4.2.0                  Rtsne_0.16                  devtools_2.4.3              munsell_0.5.0              
  [9] codetools_0.2-18            ica_1.0-2                   future_1.25.0               miniUI_0.1.1.1             
 [13] withr_2.5.0                 spatstat.random_2.2-0       colorspace_2.0-3            progressr_0.10.0           
 [17] Biobase_2.56.0              rstudioapi_0.13             stats4_4.2.0                SingleCellExperiment_1.18.0
 [21] ROCR_1.0-11                 ggsignif_0.6.3              tensor_1.5                  listenv_0.8.0              
 [25] labeling_0.4.2              MatrixGenerics_1.8.0        GenomeInfoDbData_1.2.8      polyclip_1.10-0            
 [29] farver_2.1.0                pheatmap_1.0.12             rprojroot_2.0.3             parallelly_1.31.1          
 [33] vctrs_0.4.1                 generics_0.1.2              dittoSeq_1.9.0              R6_2.5.1                   
 [37] GenomeInfoDb_1.32.2         ggbeeswarm_0.6.0            bitops_1.0-7                spatstat.utils_2.3-1       
 [41] cachem_1.0.6                DelayedArray_0.22.0         assertthat_0.2.1            promises_1.2.0.1           
 [45] scales_1.2.0                rgeos_0.5-9                 beeswarm_0.4.0              gtable_0.3.0               
 [49] globals_0.15.0              processx_3.5.3              goftest_1.2-3               rlang_1.0.2                
 [53] GlobalOptions_0.1.2         splines_4.2.0               rstatix_0.7.0               lazyeval_0.2.2             
 [57] spatstat.geom_2.4-0         broom_0.8.0                 reshape2_1.4.4              abind_1.4-5                
 [61] backports_1.4.1             httpuv_1.6.5                tools_4.2.0                 usethis_2.1.5              
 [65] ggplot2_3.3.6               ellipsis_0.3.2              spatstat.core_2.4-4         RColorBrewer_1.1-3         
 [69] BiocGenerics_0.42.0         sessioninfo_1.2.2           ggridges_0.5.3              Rcpp_1.0.8.3               
 [73] plyr_1.8.7                  zlibbioc_1.42.0             purrr_0.3.4                 RCurl_1.98-1.6             
 [77] ps_1.7.0                    prettyunits_1.1.1           ggpubr_0.4.0                rpart_4.1.16               
 [81] deldir_1.0-6                pbapply_1.5-0               viridis_0.6.2               cowplot_1.1.1              
 [85] S4Vectors_0.34.0            zoo_1.8-10                  SummarizedExperiment_1.26.1 ggrepel_0.9.1              
 [89] cluster_2.1.3               fs_1.5.2                    magrittr_2.0.3              data.table_1.14.2          
 [93] scattermore_0.8             circlize_0.4.15             lmtest_0.9-40               RANN_2.6.1                 
 [97] fitdistrplus_1.1-8          matrixStats_0.62.0          pkgload_1.2.4               patchwork_1.1.1            
[101] mime_0.12                   xtable_1.8-4                IRanges_2.30.0              gridExtra_2.3              
[105] shape_1.4.6                 testthat_3.1.4              compiler_4.2.0              tibble_3.1.7               
[109] colorway_0.2.0              KernSmooth_2.23-20          crayon_1.5.1                htmltools_0.5.2            
[113] mgcv_1.8-40                 later_1.3.0                 ggprism_1.0.3.9000          tidyr_1.2.0                
[117] lubridate_1.8.0             DBI_1.1.2                   MASS_7.3-57                 Matrix_1.4-1               
[121] car_3.0-13                  brio_1.1.3                  cli_3.3.0                   parallel_4.2.0             
[125] igraph_1.3.1                GenomicRanges_1.48.0        forcats_0.5.1               pkgconfig_2.0.3            
[129] plotly_4.10.0               spatstat.sparse_2.1-1       paletteer_1.4.0             vipor_0.4.5                
[133] XVector_0.36.0              snakecase_0.11.0            stringr_1.4.0               callr_3.7.0                
[137] digest_0.6.29               sctransform_0.3.3           RcppAnnoy_0.0.19            janitor_2.1.0              
[141] spatstat.data_2.2-0         leiden_0.4.2                uwot_0.1.11                 curl_4.3.2                 
[145] shiny_1.7.1                 lifecycle_1.0.1             nlme_3.1-157                jsonlite_1.8.0             
[149] carData_3.0-5               desc_1.4.1                  viridisLite_0.4.0           fansi_1.0.3                
[153] pillar_1.7.0                lattice_0.20-45             fastmap_1.1.0               httr_1.4.3                 
[157] pkgbuild_1.3.1              survival_3.3-1              glue_1.6.2                  remotes_2.4.2              
[161] png_0.1-7                   stringi_1.7.6               rematch2_2.1.2              memoise_2.0.1              
[165] dplyr_1.0.9                 irlba_2.3.5                 future.apply_1.9.0         ```
  
</details>

Adding Alpha/Transparency to FeaturePlot

Hey Samuel, thank you so much for putting together this tool, I am exploring it at the moment and am already super happy with it!

As you noted in the vignette, the FeaturePlot from Seurat makes it sometwhat difficult to interpret the gene expression in a way as the non-expressing cells are sometimes plotted on top of the expressing cells, your solution to by default order them imho makes a lot of sense! However, in this case, you might also be over-emphasizing certain areas in the case that there are more non-expressing cells but the few expressing cells are placed on top?

For this reason, I was wondering if it would be possible to implement the alpha parameter to the function, as it would allow to "see through" the expressors and would additionally highlight areas of high expression.

I have searched this in the Seurat github aswell and it doesn't seem that they are implementing it, but I found this code snippet that makes it somewhat work: plot$layers[[1]]$aes_params$alpha <- 0.6 (my main issue is that this will only affect the last column if split by sample e.g.)

Thanks again for all the work you put into this and for sharing it!
Best, Julia

SingleCellExperiment support

Hi @samuel-marsh

Thank you so much for developing such a great toolkit to analyze single cell data. I have recently moved from Seurat to bioconductor's SingleCellExperiment to analyze my sc data. While using Seurat I regularly used scCustomize and I was wondering if it is in the books to make scCustomize compatible with SingleCellExperiment objects.

Again, thank you so much for developing such an amazing package!

Are cell numbers normalized?

I wanted to determine if the number of particular cell type in a cluster is changing with the treatment conditions. I have used stimulated vs. control PBMC datasets Seurat vignette for this analysis comparing two conditions.

Question:
I used the code below to get the counts in each cluster and treatment condition. I wanted to know if number of cells from the code below is normalized to the total number of cells sequenced for each samples.

table(Idents(immune.combined), immune.combined$stim)

Does the output of number of cells from scCustomize is normalized to the total number of cells sequenced for each samples? if the cell numbers are not normalized then what scCustomize function should I use?

Thank you.

Add Read h5 for CellBender v3 Files

Build on broadinstitute/CellBender#145.

Create R standalone function to read new CellBender outputs without need for PyTables (R native function).
Built on Seurat Read10X_h5 code.
Loads matrix only.

  • Add function and documentation
  • Update Suggests
  • Update Vignettes
  • Rename function? Clunky

`*_Highlight_Plot` enhancements

Update Cluster_Highlight_Plot and Meta_Highlight_Plot

  • Remove "unselected" from the legend of resulting plot
  • Alter colors when plotting factor is of length > 1
  • Add check and reporting message for Idents in Cluster_Highlight_Plot
  • Change to use DimPlot_scCustom under the hood for plot consistency
  • Update vignettes with new features

control border thickness of Stacked_VlnPlot

Hi @samuel-marsh! Thanks for this useful package.

Is there anyway to change the border thickness of Stacked_VlnPlot? When I save it with ggsave and arrange it into a figure it looks incredibly thick:

image

Thanks in advance for looking into this !

Create `VlnPlot_scCustom` Function

New Defaults

  • scCustomize color pallettes
  • Set pt.size to 0 by default based on features x cells calculation for now
  • raster by default based on features x cells calculation #5 when Seurat updated
  • ggrastr in DESCRIPTION when Seurat updated
  • Update vignettes/pkgdown site

Move progress bars to cli framework

  • Using cli_progress_along() mainly
  • Rewrite pblapply functions to match format needed
  • Remove old pblapply options
  • Remove pbapply dependency

Clustered_DotPlot: Error in ComplexHeatmap::Legend

Hello,

Thank you for your wonderful work!

I used Clustered_Dotplot, to visualize my dataset, but it always gives this error. I update the version to develop version,but difficulties remain.

library(SeuratData)
InstallData("pbmc3k")
data("pbmc3k")
pbmc <- pbmc3k.SeuratData::pbmc3k.final
pbmc <- UpdateSeuratObject(pbmc)
Clustered_DotPlot(seurat_object = pbmc, features = VariableFeatures(pbmc)[1:5])

Error in ComplexHeatmap::Legend(labels = c(0.25, 0.5, 0.75, 1), title = "Percent Expressing", :
unused argument (graphics = list(function(x, y, w, h) grid.circle(x = x, y = y, r = sqrt(0.25) * unit(2, "mm"), gp = gpar(fill = "black")), function(x, y, w, h) grid.circle(x = x, y = y, r = sqrt(0.5) * unit(2, "mm"), gp = gpar(fill = "black")), function(x, y, w, h) grid.circle(x = x, y = y, r = sqrt(0.75) * unit(2, "mm"), gp = gpar(fill = "black")),

> sessionInfo()
R version 4.0.5 (2021-03-31)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)

Matrix products: default

locale:
[1] LC_COLLATE=Chinese (Simplified)_China.936  LC_CTYPE=Chinese (Simplified)_China.936    LC_MONETARY=Chinese (Simplified)_China.936
[4] LC_NUMERIC=C                               LC_TIME=Chinese (Simplified)_China.936    

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

other attached packages:
 [1] scCustomize_0.7.0.9908      pbmc3k.SeuratData_3.1.4     SeuratData_0.2.2            forcats_0.5.1               purrr_0.3.4                
 [6] readr_1.4.0                 tibble_3.1.6                tidyverse_1.3.1             rlang_1.0.1                 clusterProfiler_4.3.1      
[11] SeuratWrappers_0.3.0        stringr_1.4.0               Hmisc_4.5-0                 Formula_1.2-4               survival_3.2-11            
[16] lattice_0.20-44             scales_1.1.1                RColorBrewer_1.1-2          ggsci_2.9                   tidyr_1.1.3                
[21] slingshot_2.1.1             TrajectoryUtils_1.1.2       SingleCellExperiment_1.12.0 SummarizedExperiment_1.20.0 Biobase_2.50.0             
[26] GenomicRanges_1.42.0        GenomeInfoDb_1.26.7         IRanges_2.24.1              S4Vectors_0.28.1            BiocGenerics_0.36.1        
[31] MatrixGenerics_1.2.1        matrixStats_0.60.0          princurve_2.1.6             datapasta_3.1.0             heatmap3_1.1.9             
[36] pvclust_2.2-0               dendextend_1.15.1           dendsort_0.3.4              circlize_0.4.12             ComplexHeatmap_2.4.3       
[41] dplyr_1.0.7                 plyr_1.8.6                  tradeSeq_1.7.07             SeuratObject_4.0.4          Seurat_4.1.0               
[46] corrplot_0.88               cowplot_1.1.1               patchwork_1.1.1             ggplot2_3.3.3               reticulate_1.20            

loaded via a namespace (and not attached):
  [1] rsvd_1.0.5             ica_1.0-2              ps_1.6.0               lmtest_0.9-38          rprojroot_2.0.2        crayon_1.5.0          
  [7] spatstat.core_2.1-2    rbibutils_2.2.3        MASS_7.3-54            dittoSeq_1.9.0         nlme_3.1-152           backports_1.2.1       
 [13] reprex_2.0.0           GOSemSim_2.14.2        XVector_0.30.0         ROCR_1.0-11            readxl_1.3.1           irlba_2.3.3           
 [19] callr_3.7.0            limma_3.46.0           BiocParallel_1.24.1    rjson_0.2.20           bit64_4.0.5            glue_1.6.1            
 [25] pheatmap_1.0.12        sctransform_0.3.3      processx_3.5.2         vipor_0.4.5            spatstat.sparse_2.0-0  AnnotationDbi_1.52.0  
 [31] DOSE_3.14.0            spatstat.geom_2.3-2    haven_2.4.1            tidyselect_1.1.1       usethis_2.1.5          rio_0.5.27            
 [37] fitdistrplus_1.1-5     zoo_1.8-9              ggpubr_0.4.0           xtable_1.8-4           magrittr_2.0.2         Rdpack_2.1.2          
 [43] cli_3.2.0              zlibbioc_1.36.0        sn_2.0.0               rstudioapi_0.13        miniUI_0.1.1.1         rpart_4.1-15          
 [49] mathjaxr_1.4-0         fastmatch_1.1-3        shiny_1.6.0            xfun_0.29              clue_0.3-58            multtest_2.46.0       
 [55] pkgbuild_1.3.1         cluster_2.1.2          tidygraph_1.2.0        ggrepel_0.9.1          listenv_0.8.0          png_0.1-7             
 [61] future_1.21.0          withr_2.4.3            bitops_1.0-7           ggforce_0.3.3          cellranger_1.1.0       pillar_1.7.0          
 [67] GlobalOptions_0.1.2    cachem_1.0.6           multcomp_1.4-17        fs_1.5.2               GetoptLong_1.0.5       paletteer_1.4.0       
 [73] vctrs_0.3.8            ellipsis_0.3.2         generics_0.1.0         devtools_2.4.3         metap_1.4              tools_4.0.5           
 [79] foreign_0.8-81         beeswarm_0.4.0         munsell_0.5.0          tweenr_1.0.2           fgsea_1.14.0           DelayedArray_0.16.3   
 [85] fastmap_1.1.0          compiler_4.0.5         pkgload_1.2.4          abind_1.4-5            httpuv_1.6.1           sessioninfo_1.2.2     
 [91] clipr_0.7.1            plotly_4.9.3           GenomeInfoDbData_1.2.4 gridExtra_2.3          edgeR_3.30.3           colorway_0.2.0        
 [97] deldir_1.0-6           mutoss_0.1-12          utf8_1.2.2             later_1.2.0            prismatic_1.1.0        jsonlite_1.7.3        
[103] pbapply_1.4-3          carData_3.0-4          lazyeval_0.2.2         promises_1.2.0.1       car_3.0-11             latticeExtra_0.6-29   
[109] R.utils_2.10.1         goftest_1.2-2          spatstat.utils_2.3-0   checkmate_2.0.0        openxlsx_4.2.4         sandwich_3.0-1        
[115] Rtsne_0.15             downloader_0.4         uwot_0.1.10            igraph_1.2.6           plotrix_3.8-1          numDeriv_2016.8-1.1   
[121] htmltools_0.5.1.1      memoise_2.0.1          locfit_1.5-9.4         graphlayouts_0.7.1     viridisLite_0.4.0      digest_0.6.29         
[127] assertthat_0.2.1       rappdirs_0.3.3         mime_0.12              RSQLite_2.2.7          yulab.utils_0.0.4      future.apply_1.7.0    
[133] remotes_2.4.2          data.table_1.14.0      blob_1.2.2             R.oo_1.24.0            splines_4.0.5          labeling_0.4.2        
[139] rematch2_2.1.2         RCurl_1.98-1.3         broom_0.7.6            hms_1.1.0              modelr_0.1.8           colorspace_1.4-1      
[145] base64enc_0.1-3        BiocManager_1.30.16    mnormt_2.0.2           ggbeeswarm_0.6.0       shape_1.4.5            tmvnsim_1.0-2         
[151] ggrastr_0.2.3          nnet_7.3-16            Rcpp_1.0.7             RANN_2.6.1             mvtnorm_1.1-2          enrichplot_1.10.2     
[157] fansi_1.0.2            brio_1.1.3             parallelly_1.25.0      R6_2.5.1               ggridges_0.5.3         lifecycle_1.0.1       
[163] zip_2.2.0              TFisher_0.2.0          curl_4.3.2             ggsignif_0.6.2         leiden_0.3.8           testthat_3.1.2        
[169] snakecase_0.11.0       fastcluster_1.2.3      DO.db_2.9              Matrix_1.4-0           qvalue_2.20.0          TH.data_1.0-10        
[175] desc_1.4.0             RcppAnnoy_0.0.18       htmlwidgets_1.5.3      polyclip_1.10-0        shadowtext_0.0.9       rvest_1.0.0           
[181] mgcv_1.8-35            globals_0.14.0         htmlTable_2.2.1        codetools_0.2-18       lubridate_1.7.10       GO.db_3.11.4          
[187] prettyunits_1.1.1      dbplyr_2.1.1           R.methodsS3_1.8.1      gtable_0.3.0           DBI_1.1.1              tensor_1.5            
[193] httr_1.4.2             KernSmooth_2.23-20     stringi_1.7.6          reshape2_1.4.4         farver_2.1.0           viridis_0.6.1         
[199] xml2_1.3.3             rvcheck_0.1.8          scattermore_0.7        bit_4.0.4              scatterpie_0.1.6       jpeg_0.1-8.1          
[205] spatstat.data_2.1-0    ggraph_2.0.5           janitor_2.1.0          pkgconfig_2.0.3        ggprism_1.0.3.9000     rstatix_0.7.0         
[211] knitr_1.37   

Any way to change legend order?

So I have a UMAP that assigns colors based on cell size, and then I used scCustomize to make a clustered dotplot. However, i notice that the clustered Dotplot order is alphabetical. Any way to make it a custom order (but keep the associated colors), so that i can match my legends? I feel like I can do this in photoshop, but it would be tedious. I read in another thread that the clustered dotplot isn't ggplot? so not sure how to approach it.

I'm trying to match this order from my umap (made with dittoseq):
image

with this from the dotplot:
image

Thanks!

functions appear to not follow the same coloring scheme

I used DimPlot_scCustom and Clustered_Dotplot, to visualize the cell types and markers respectively in my dataset. The two functions do not appear to follow the same color scheme order. For example, the color of astrocytes in the umap is gray and in the clustered dot plot it's magenta. It would be nice to coordinate the cell-type colors across all functions.

Thank you

Test Seurat 4.1.0 Update

  • Test FeaturePlot_scCustom with Seurat Fix
  • Add raster.dpi parameter (hold for later release to prevent need to update Seurat if not desired)
  • Run vignette checks for errors (Wait and check this by building website for next release with 4.1.0, everything appears ok in prelim tests)

Plot_Density_Custom custom_palette option only applies the custom palette to last plot if passed multiple genes

Hi, first of all, thanks for making the excellent package, it has been extremely helpful. However, I have a suggestion for an improvement. You can pass multiple genes to the nebulosa function plot_density and likewise your custom function that uses plot_density, Plot_Custom_Density in order to make a nice figure panel of nebulosa figures. However, when you pass multiple genes to Plot_Custom_Density with the custom_palette option set to your own bespoke color scheme, the colors are only applied to the last plot. Perhaps there is a way around this to get it to apply to all the plots I am not aware of, but if not, it would be a helpful amendment.

setting combine = FALSE in FeaturePlot_scCustomize() returns NULL

There seems to be a problem when the combine = FALSE flag is set in FeaturePlot_scCustomize(). The function call simply returns NULL. Find mwe below, thanks a lot for your help!
Best, Niko

library(Seurat)
library(SeuratData)
library(scCustomize)
library(dplyr)
InstallData("pbmc3k")
data("pbmc3k")
pbmc = pbmc3k %>% 
  NormalizeData() %>% 
  ScaleData() %>% 
  FindVariableFeatures() %>%  
  RunPCA() %>% 
  RunUMAP(dims = 1:10)
FeaturePlot(pbmc,features = c('NRG1','ERBB2'), combine = FALSE)
FeaturePlot_scCustom(pbmc,features = c('NRG1','ERBB2'), combine = FALSE)

Output:

>  x 

[[1]]
[[2]]

> y

NULL

SessionInfo:

R version 4.1.2 (2021-11-01)
Platform: aarch64-apple-darwin20 (64-bit)
Running under: macOS Monterey 12.2.1

Matrix products: default
LAPACK: /Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

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

other attached packages:
[1] pbmc3k.SeuratData_3.1.4 scCustomize_0.7.0       SeuratData_0.2.1        SeuratObject_4.0.4      Seurat_4.1.0           
[6] dplyr_1.0.8            

loaded via a namespace (and not attached):
  [1] utf8_1.2.2                  reticulate_1.24             tidyselect_1.1.2            htmlwidgets_1.5.4          
  [5] grid_4.1.2                  Rtsne_0.15                  devtools_2.4.3              munsell_0.5.0              
  [9] codetools_0.2-18            ica_1.0-2                   future_1.24.0               miniUI_0.1.1.1             
 [13] withr_2.5.0                 spatstat.random_2.2-0       colorspace_2.0-3            Biobase_2.54.0             
 [17] rstudioapi_0.13             stats4_4.1.2                SingleCellExperiment_1.16.0 ROCR_1.0-11                
 [21] ggsignif_0.6.3              tensor_1.5                  listenv_0.8.0               labeling_0.4.2             
 [25] MatrixGenerics_1.6.0        GenomeInfoDbData_1.2.7      polyclip_1.10-0             farver_2.1.0               
 [29] pheatmap_1.0.12             rprojroot_2.0.3             parallelly_1.30.0           vctrs_0.4.0                
 [33] generics_0.1.2              dittoSeq_1.7.0              R6_2.5.1                    GenomeInfoDb_1.30.1        
 [37] ggbeeswarm_0.6.0            bitops_1.0-7                spatstat.utils_2.3-0        cachem_1.0.6               
 [41] DelayedArray_0.20.0         promises_1.2.0.1            scales_1.1.1                beeswarm_0.4.0             
 [45] gtable_0.3.0                globals_0.14.0              processx_3.5.3              goftest_1.2-3              
 [49] rlang_1.0.2                 GlobalOptions_0.1.2         splines_4.1.2               rstatix_0.7.0              
 [53] lazyeval_0.2.2              spatstat.geom_2.4-0         broom_0.7.12                reshape2_1.4.4             
 [57] abind_1.4-5                 backports_1.4.1             httpuv_1.6.5                tools_4.1.2                
 [61] usethis_2.1.5               ggplot2_3.3.5               ellipsis_0.3.2              spatstat.core_2.4-2        
 [65] RColorBrewer_1.1-3          BiocGenerics_0.40.0         sessioninfo_1.2.2           ggridges_0.5.3             
 [69] Rcpp_1.0.8.3                plyr_1.8.7                  zlibbioc_1.40.0             purrr_0.3.4                
 [73] RCurl_1.98-1.6              ps_1.6.0                    prettyunits_1.1.1           ggpubr_0.4.0               
 [77] rpart_4.1.16                deldir_1.0-6                pbapply_1.5-0               viridis_0.6.2              
 [81] cowplot_1.1.1               S4Vectors_0.32.4            zoo_1.8-9                   SummarizedExperiment_1.24.0
 [85] ggrepel_0.9.1               cluster_2.1.2               fs_1.5.2                    magrittr_2.0.3             
 [89] RSpectra_0.16-0             data.table_1.14.2           scattermore_0.8             circlize_0.4.14            
 [93] lmtest_0.9-40               RANN_2.6.1                  fitdistrplus_1.1-8          matrixStats_0.61.0         
 [97] pkgload_1.2.4               patchwork_1.1.1             mime_0.12                   xtable_1.8-4               
[101] IRanges_2.28.0              gridExtra_2.3               shape_1.4.6                 testthat_3.1.3             
[105] compiler_4.1.2              tibble_3.1.6                colorway_0.2.0              KernSmooth_2.23-20         
[109] crayon_1.5.1                htmltools_0.5.2             mgcv_1.8-39                 later_1.3.0                
[113] ggprism_1.0.3.9000          tidyr_1.2.0                 lubridate_1.8.0             MASS_7.3-55                
[117] rappdirs_0.3.3              Matrix_1.4-0                car_3.0-12                  brio_1.1.3                 
[121] cli_3.2.0                   parallel_4.1.2              igraph_1.3.0                GenomicRanges_1.46.1       
[125] forcats_0.5.1               pkgconfig_2.0.3             plotly_4.10.0               spatstat.sparse_2.1-0      
[129] paletteer_1.4.0             vipor_0.4.5                 XVector_0.34.0              snakecase_0.11.0           
[133] stringr_1.4.0               callr_3.7.0                 digest_0.6.29               sctransform_0.3.3          
[137] RcppAnnoy_0.0.19            janitor_2.1.0               spatstat.data_2.1-4         leiden_0.3.9               
[141] uwot_0.1.11                 curl_4.3.2                  shiny_1.7.1                 lifecycle_1.0.1            
[145] nlme_3.1-155                jsonlite_1.8.0              carData_3.0-5               desc_1.4.1                 
[149] viridisLite_0.4.0           fansi_1.0.3                 pillar_1.7.0                lattice_0.20-45            
[153] fastmap_1.1.0               httr_1.4.2                  pkgbuild_1.3.1              survival_3.3-1             
[157] glue_1.6.2                  remotes_2.4.2               png_0.1-7                   stringi_1.7.6              
[161] rematch2_2.1.2              memoise_2.0.1               renv_0.15.4                 irlba_2.3.5                
[165] future.apply_1.8.1         

Check cli/rlang replacements

  • Split_FeatureScatter
  • Check liger plotfactors to ensure newline on saving messages are respected.
  • check complex mito ribo overwrite errors
  • Check on message at end of Store_Misc_Seurat
  • Play with quoting using double quotes instead of single

Other

  • Go through Store_Misc_Seurat and make sure it's correct and not redundant

Figure out how to deal with parent child function error messaging

  • Meta_Present_LIGER
  • Meta_Present_Seurat
  • Gene_Present_Seurat

Progress Bars for Parallel Read Functions

Having an unknown issue with pbmcapply functionality.

Potentially shift usage to future framework using either future_lapply or furrr with progressr for progress bars.

Help wanted. If you are interested in helping please leave message here with your contact info.

Error in scCustomize_Palette(num_groups = group_by_length, ggplot_default_colors = ggplot_default_colors, : object 'color_seed' not found

Hello,

When I try to run Clustered_dotplot function, I get this error message:

Clustered_DotPlot(seurat_object = seu_MCBneu7Ksct_60dims_n110, features = Or_shortlist, colors_use_exp = viridis_pal(direction = -1, option = "D"), plot_km_elbow = F)

Error in scCustomize_Palette(num_groups = group_by_length, ggplot_default_colors = ggplot_default_colors, :
object 'color_seed' not found

I successfully run the command with another smaller dataset that has 25 clusters instead of 60. I believe the problem has to do with the generating enough colors to label clusters but I am not sure.

Are the barplots applicable to expression features split by groupings/condition?

Hello. I came across your very nice tool of boxplots with significant comparisons of quantitative measures. I saw it at the Basic Statistics section, the boxplots.

I wonder if it can be repurposed for visualizing expression features.

For example, can I use it to visualize Pathway Module scores of a cluster/subset, split.by the 3 groups (Healthy, Mild, Severe), to see the differences in pathway activation across these conditions?

Thank you in advance.

image

Fix LIGER mito/ribo naming

Current function doesnโ€™t respect provided name parameters. And can accidentally overwrite if defaults are changed even when overwrite = F.

meta_sample_list_test' not found

Hello, I do get this error "meta_sample_list_test' not found" any time I set these two features to (feature 1= nCount_RNA & feature2 = nFeature_RNA). It did work for me after changing it to meta_sample_list. Thanks

r command:
Split_FeatureScatter(seurat_object = data_raw_control_seurat_obj, feature1 = "nFeature_RNA",
feature2 = "nCount_RNA", pt.size=0.1, split.by = "orig.ident", colors_use = "red")

error message:
Error in lapply(1:length(x = meta_sample_list_test), function(i) { :
object 'meta_sample_list_test' not found

Check plot returns

  • dimplot_scCustom

Iterative Functions

  • adding interactive/return plot ability?

Integration of different species datasets

Thank you for this amazing tool!

  • Would it be possible to add a feature to convert gene names in the corresponding orthologs, for integration across different species?
  • Would it be possible to add 'Features Mito/Ribo Functions' for macaca mulatta?

Stacked_VlnPlot change labels

Hi,

I am using a Seurat object with EnsIDs as rownames. Unfortunately, Seurat is very bad at handling gene-level metadata. I can put the symbols and other information about each feature manually in the gene level metadata slot, but all of the Seurat functions lack an option to retrieve them upon plotting. Therefore I have to manually change the labels of each plot by scale_x_discrete(labels = df$symbols) . This works fine for DotPlots and I managed to write a function for multiple-feature plots as well. But I can't get it to work with stacked VlnPlots (as these are technically multiple wrapped plots, I assume?)

Would be great if there was a feature to supply alternative feature names to Stacked_VlnPlot. Of course, this would be very handy for all other enhanced scCustomize plotting functions, too. Maybe even with an option to just specify the slot in the feature level metadata that is to be used for plotting instead of rownames()

Thanks a lot for your help,
best Niko

move ggrastr to Suggests

Can you move ggrastr from imports to suggests? ggrastr requires Cairo which was cool 15 years ago and now is just a pain to install.

Add to Meta Data slot

  • Add new column based on values of other columns
  • Add based on cell barcode prefix
  • Add based on specific set of cell barcodes

Unable to override default identity colors in Clustered Dotplot

Hi! I have a color palette:

paletteer_d("tidyquant::tq_light")

that produces a colors like this:
CD45 v2 5 cell_type

but it doesn't override the default colors of the identity with this code:

Clustered_DotPlot(seurat_object = seurat, features = features, exp_color_min = -1, exp_color_max = 2, k=9,  plot_km_elbow = FALSE, colors_use_idents = paletteer_d("tidyquant::tq_light"), raster = TRUE)

color_issue

it's probably something simple i'm not catching. any thoughts?

sessionInfo() output
R version 4.1.0 (2021-05-18)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.7

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

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

other attached packages:
 [1] paletteer_1.4.0             UpSetR_1.4.0               
 [3] patchwork_1.1.1             RColorBrewer_1.1-2         
 [5] qs_0.25.3                   viridis_0.6.2              
 [7] viridisLite_0.4.0           clustree_0.4.4             
 [9] ggraph_2.0.5                scCustomize_0.7.0          
[11] xlsx_0.6.5                  SeuratWrappers_0.3.0       
[13] ggrepel_0.9.1               ggpubr_0.4.0               
[15] monocle3_1.0.0              SingleCellExperiment_1.16.0
[17] SummarizedExperiment_1.24.0 GenomicRanges_1.46.1       
[19] GenomeInfoDb_1.30.1         IRanges_2.28.0             
[21] S4Vectors_0.32.3            MatrixGenerics_1.6.0       
[23] matrixStats_0.61.0          Biobase_2.54.0             
[25] BiocGenerics_0.40.0         dittoSeq_1.7.0             
[27] cowplot_1.1.1               ggthemes_4.2.4             
[29] webshot_0.5.2               clipr_0.7.1                
[31] gt_0.3.1                    plotly_4.10.0              
[33] DT_0.20                     forcats_0.5.1              
[35] stringr_1.4.0               dplyr_1.0.8                
[37] purrr_0.3.4                 readr_2.1.2                
[39] tidyr_1.2.0                 tibble_3.1.6               
[41] ggplot2_3.3.5               tidyverse_1.3.1            
[43] Seurat_4.1.0                SeuratObject_4.0.4         

loaded via a namespace (and not attached):
  [1] rsvd_1.0.5                ica_1.0-2                 ps_1.6.0                 
  [4] rprojroot_2.0.2           foreach_1.5.2             lmtest_0.9-39            
  [7] crayon_1.5.0              rhdf5filters_1.6.0        spatstat.core_2.4-0      
 [10] rbibutils_2.2.7           MASS_7.3-55               nlme_3.1-155             
 [13] backports_1.4.1           reprex_2.0.1              rlang_1.0.2              
 [16] XVector_0.34.0            ROCR_1.0-11               readxl_1.3.1             
 [19] irlba_2.3.5               callr_3.7.0               limma_3.50.0             
 [22] stringfish_0.15.5         BiocParallel_1.28.3       rjson_0.2.21             
 [25] bit64_4.0.5               glue_1.6.2                pheatmap_1.0.12          
 [28] sctransform_0.3.3         processx_3.5.2            parallel_4.1.0           
 [31] vipor_0.4.5               AnnotationDbi_1.56.2      spatstat.sparse_2.1-0    
 [34] spatstat.geom_2.3-2       haven_2.4.3               tidyselect_1.1.2         
 [37] usethis_2.1.5             fitdistrplus_1.1-8        XML_3.99-0.8             
 [40] zoo_1.8-9                 xtable_1.8-4              magrittr_2.0.2           
 [43] evaluate_0.15             Rdpack_2.1.3              scuttle_1.4.0            
 [46] cli_3.2.0                 zlibbioc_1.40.0           sn_2.0.1                 
 [49] rstudioapi_0.13           miniUI_0.1.1.1            rpart_4.1.16             
 [52] mathjaxr_1.4-0            GSVA_1.42.0               shiny_1.7.1              
 [55] BiocSingular_1.10.0       xfun_0.30                 clue_0.3-60              
 [58] pkgbuild_1.3.1            multtest_2.48.0           cluster_2.1.2            
 [61] tidygraph_1.2.0           KEGGREST_1.34.0           listenv_0.8.0            
 [64] Biostrings_2.62.0         xlsxjars_0.6.1            png_0.1-7                
 [67] future_1.24.0             withr_2.5.0               bitops_1.0-7             
 [70] ggforce_0.3.3             plyr_1.8.6                cellranger_1.1.0         
 [73] GSEABase_1.56.0           dqrng_0.3.0               pillar_1.7.0             
 [76] RcppParallel_5.1.5        cachem_1.0.6              GlobalOptions_0.1.2      
 [79] multcomp_1.4-18           fs_1.5.2                  GetoptLong_1.0.5         
 [82] DelayedMatrixStats_1.16.0 vctrs_0.3.8               ellipsis_0.3.2           
 [85] generics_0.1.2            devtools_2.4.3            RApiSerialize_0.1.0      
 [88] metap_1.7                 tools_4.1.0               beeswarm_0.4.0           
 [91] munsell_0.5.0             tweenr_1.0.2              DelayedArray_0.20.0      
 [94] pkgload_1.2.4             fastmap_1.1.0             compiler_4.1.0           
 [97] abind_1.4-5               httpuv_1.6.5              sessioninfo_1.2.2        
[100] rJava_1.0-6               GenomeInfoDbData_1.2.7    gridExtra_2.3            
[103] edgeR_3.36.0              colorway_0.2.0            lattice_0.20-45          
[106] deldir_1.0-6              sceasy_0.0.6              mutoss_0.1-12            
[109] utf8_1.2.2                later_1.3.0               prismatic_1.1.0          
[112] jsonlite_1.8.0            scales_1.1.1              graph_1.72.0             
[115] ScaledMatrix_1.2.0        pbapply_1.5-0             carData_3.0-5            
[118] sparseMatrixStats_1.6.0   lazyeval_0.2.2            promises_1.2.0.1         
[121] car_3.0-12                doParallel_1.0.17         R.utils_2.11.0           
[124] goftest_1.2-3             spatstat.utils_2.3-0      reticulate_1.24          
[127] checkmate_2.0.0           openxlsx_4.2.5            rmarkdown_2.13           
[130] sandwich_3.0-1            textshaping_0.3.6         statmod_1.4.36           
[133] Rtsne_0.15                glmGamPoi_1.4.0           uwot_0.1.11              
[136] igraph_1.2.11             HDF5Array_1.22.1          survival_3.2-13          
[139] numDeriv_2016.8-1.1       yaml_2.3.5                plotrix_3.8-2            
[142] systemfonts_1.0.4         memoise_2.0.1             htmltools_0.5.2          
[145] locfit_1.5-9.4            graphlayouts_0.8.0        here_1.0.1               
[148] digest_0.6.29             assertthat_0.2.1          mime_0.12                
[151] RSQLite_2.2.9             future.apply_1.8.1        remotes_2.4.2            
[154] data.table_1.14.2         blob_1.2.2                R.oo_1.24.0              
[157] ragg_1.2.2                splines_4.1.0             labeling_0.4.2           
[160] Rhdf5lib_1.16.0           rematch2_2.1.2            Cairo_1.5-14             
[163] RCurl_1.98-1.6            broom_0.7.12              hms_1.1.1                
[166] modelr_0.1.8              rhdf5_2.38.0              colorspace_2.0-3         
[169] BiocManager_1.30.16       mnormt_2.0.2              ggbeeswarm_0.6.0         
[172] shape_1.4.6               tmvnsim_1.0-2             ggrastr_1.0.1            
[175] sass_0.4.0                Rcpp_1.0.8.2              RANN_2.6.1               
[178] mvtnorm_1.1-3             circlize_0.4.14           fansi_1.0.2              
[181] tzdb_0.2.0                brio_1.1.3                parallelly_1.30.0        
[184] R6_2.5.1                  grid_4.1.0                ggridges_0.5.3           
[187] lifecycle_1.0.1           zip_2.2.0                 TFisher_0.2.0            
[190] bluster_1.4.0             ggsignif_0.6.3            testthat_3.1.2           
[193] leiden_0.3.9              snakecase_0.11.0          Matrix_1.4-0             
[196] desc_1.4.1                RcppAnnoy_0.0.19          TH.data_1.1-0            
[199] iterators_1.0.14          htmlwidgets_1.5.4         beachmat_2.10.0          
[202] polyclip_1.10-0           rvest_1.0.2               ComplexHeatmap_2.11.1    
[205] mgcv_1.8-38               globals_0.14.0            spatstat.random_2.1-0    
[208] codetools_0.2-18          lubridate_1.8.0           metapod_1.2.0            
[211] prettyunits_1.1.1         dbplyr_2.1.1              RSpectra_0.16-0          
[214] R.methodsS3_1.8.1         gtable_0.3.0              DBI_1.1.2                
[217] tensor_1.5                httr_1.4.2                KernSmooth_2.23-20       
[220] stringi_1.7.6             vroom_1.5.7               reshape2_1.4.4           
[223] farver_2.1.0              annotate_1.72.0           magick_2.7.3             
[226] xml2_1.3.3                BiocNeighbors_1.12.0      scattermore_0.8          
[229] scran_1.22.1              bit_4.0.4                 spatstat.data_2.1-2      
[232] janitor_2.1.0             pkgconfig_2.0.3           ggprism_1.0.3.9000       
[235] rstatix_0.7.0             knitr_1.37    

Clustered_DotPlot cannot add another layer to change x-axis ticks

Hi,

I'm using Clustered_DotPlot to make clustered dotplot. My plot has gene_ID on x-axis, which I want to change to gene_symbol. I've tried this by using DotPlot_scCustom and it worked as follows:

topN  <-  c("ENSRNOG00000016928", "ENSRNOG00000069361", "ENSRNOG00000017589", "ENSRNOG00000003633", "ENSRNOG00000047225")

> head(geneTable)
              geneID         geneSymbol
1 ENSRNOG00000066169 ENSRNOG00000066169
2 ENSRNOG00000070168              Olr56
3 ENSRNOG00000070901               Irgq
4 ENSRNOG00000018029              Doc2g
5 ENSRNOG00000031391           Ceacam16
6 ENSRNOG00000050129     AABR07000137.1
pdf(paste0(outdir, "test1.pdf"), width = 20, height = 10)
p1 <- DotPlot_scCustom(scrna.combined, features = topN, x_lab_rotate = TRUE, colors_use = "blue") + scale_x_discrete(breaks=topN, labels=geneTable$geneSymbol[match(topN, geneTable$geneID)])
print(p1)
dev.off()

However, it doesn't work for Clustered_DotPlot (the label is not changed):

pdf(paste0(outdir, "test2.pdf"), width = 10, height = 15)
p1 <- Clustered_DotPlot(scrna.combined, features = topN, x_lab_rotate = F) + scale_y_discrete(breaks=topN, labels=geneTable$geneSymbol[match(topN, geneTable$geneID)])
print(p1)
dev.off()

Thank you for helping.

sessionInfo()
R version 4.1.2 (2021-11-01)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.7

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

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

other attached packages:
[1] plyr_1.8.6 gridExtra_2.3 qs_0.25.3 scCustomize_0.7.0
[5] viridis_0.6.2 viridisLite_0.4.0 forcats_0.5.1 purrr_0.3.4
[9] readr_2.1.2 tidyr_1.2.0 tibble_3.1.6 tidyverse_1.3.1
[13] cowplot_1.1.1 FlexDotPlot_0.2.1 monocle3_1.0.0 SingleCellExperiment_1.16.0
[17] SummarizedExperiment_1.24.0 GenomicRanges_1.46.1 GenomeInfoDb_1.30.1 IRanges_2.28.0
[21] S4Vectors_0.32.3 MatrixGenerics_1.6.0 matrixStats_0.61.0 Biobase_2.54.0
[25] BiocGenerics_0.40.0 scry_1.6.0 SeuratWrappers_0.3.0 glmpca_0.2.0
[29] reticulate_1.24 SoupX_1.5.2 stringr_1.4.0 ggplot2_3.3.5
[33] patchwork_1.1.1 SeuratObject_4.0.4 Seurat_4.1.0 dplyr_1.0.8

loaded via a namespace (and not attached):
[1] ggprism_1.0.3.9000 scattermore_0.8 R.methodsS3_1.8.1 ragg_1.2.2 bit64_4.0.5
[6] knitr_1.37 multcomp_1.4-18 irlba_2.3.5 sisal_0.48 DelayedArray_0.20.0
[11] R.utils_2.11.0 data.table_1.14.2 rpart_4.1.16 doParallel_1.0.17 RCurl_1.98-1.6
[16] generics_0.1.2 metap_1.8 ScaledMatrix_1.2.0 TH.data_1.1-0 RApiSerialize_0.1.0
[21] RANN_2.6.1 future_1.24.0 bit_4.0.4 tzdb_0.2.0 mutoss_0.1-12
[26] spatstat.data_2.1-2 xml2_1.3.3 lubridate_1.8.0 httpuv_1.6.5 assertthat_0.2.1
[31] xfun_0.30 hms_1.1.1 jquerylib_0.1.4 promises_1.2.0.1 fansi_1.0.2
[36] dendextend_1.15.2 dbplyr_2.1.1 readxl_1.3.1 tmvnsim_1.0-2 igraph_1.2.11
[41] DBI_1.1.2 htmlwidgets_1.5.4 spatstat.geom_2.3-2 paletteer_1.4.0 ellipsis_0.3.2
[46] RSpectra_0.16-0 ggpubr_0.4.0 backports_1.4.1 FactoMineR_2.4 prismatic_1.1.0
[51] grImport2_0.2-0 RcppParallel_5.1.5 deldir_1.0-6 vctrs_0.3.8 remotes_2.4.2
[56] ROCR_1.0-11 abind_1.4-5 withr_2.5.0 ggforce_0.3.3 sctransform_0.3.3
[61] dittoSeq_1.7.0 mnormt_2.0.2 goftest_1.2-3 cluster_2.1.2 lazyeval_0.2.2
[66] crayon_1.5.0 hdf5r_1.3.5 labeling_0.4.2 pkgconfig_2.0.3 qqconf_1.2.1
[71] tweenr_1.0.2 nlme_3.1-155 vipor_0.4.5 rlang_1.0.2 globals_0.14.0
[76] lifecycle_1.0.1 miniUI_0.1.1.1 sandwich_3.0-1 colourpicker_1.1.1 mathjaxr_1.6-0
[81] modelr_0.1.8 rsvd_1.0.5 cellranger_1.1.0 polyclip_1.10-0 lmtest_0.9-39
[86] Matrix_1.4-0 carData_3.0-5 boot_1.3-28 zoo_1.8-9 reprex_2.0.1
[91] base64enc_0.1-3 beeswarm_0.4.0 ggridges_0.5.3 GlobalOptions_0.1.2 pheatmap_1.0.12
[96] rjson_0.2.21 stringfish_0.15.5 png_0.1-7 bitops_1.0-7 shinydashboard_0.7.2
[101] R.oo_1.24.0 KernSmooth_2.23-20 shape_1.4.6 parallelly_1.30.0 spatstat.random_2.1-0
[106] jpeg_0.1-9 rstatix_0.7.0 ggsignif_0.6.3 beachmat_2.10.0 scales_1.1.1
[111] leaps_3.1 magrittr_2.0.2 ica_1.0-2 zlibbioc_1.40.0 compiler_4.1.2
[116] RColorBrewer_1.1-2 clue_0.3-60 plotrix_3.8-2 fitdistrplus_1.1-6 snakecase_0.11.0
[121] cli_3.2.0 XVector_0.34.0 listenv_0.8.0 pbapply_1.5-0 MASS_7.3-55
[126] mgcv_1.8-39 tidyselect_1.1.2 stringi_1.7.6 textshaping_0.3.6 BiocSingular_1.10.0
[131] ggrepel_0.9.1 grid_4.1.2 sass_0.4.0 tools_4.1.2 future.apply_1.8.1
[136] parallel_4.1.2 circlize_0.4.14 rstudioapi_0.13 foreach_1.5.2 janitor_2.1.0
[141] scatterplot3d_0.3-41 farver_2.1.0 Rtsne_0.15 digest_0.6.29 BiocManager_1.30.16
[146] shiny_1.7.1 Rcpp_1.0.8 car_3.0-12 broom_0.7.12 later_1.3.0
[151] RcppAnnoy_0.0.19 shinyWidgets_0.6.4 httr_1.4.2 ggdendro_0.1.23 ComplexHeatmap_2.10.0
[156] Rdpack_2.1.4 colorspace_2.0-3 rvest_1.0.2 XML_3.99-0.9 fs_1.5.2
[161] tensor_1.5 splines_4.1.2 uwot_0.1.11 sn_2.0.1 rematch2_2.1.2
[166] spatstat.utils_2.3-0 multtest_2.50.0 systemfonts_1.0.4 plotly_4.10.0 xtable_1.8-4
[171] jsonlite_1.8.0 flashClust_1.01-2 R6_2.5.1 TFisher_0.2.0 pillar_1.7.0
[176] htmltools_0.5.2 mime_0.12 glue_1.6.2 fastmap_1.1.0 DT_0.21
[181] BiocParallel_1.28.3 codetools_0.2-18 mvtnorm_1.1-3 utf8_1.2.2 lattice_0.20-45
[186] bslib_0.3.1 spatstat.sparse_2.1-0 numDeriv_2016.8-1.1 bsplus_0.1.3 ggbeeswarm_0.6.0
[191] leiden_0.3.9 colorway_0.2.0 limma_3.50.1 survival_3.3-1 munsell_0.5.0
[196] GetoptLong_1.0.5 R.matlab_3.6.2 GenomeInfoDbData_1.2.7 iterators_1.0.14 haven_2.4.3
[201] reshape2_1.4.4 gtable_0.3.0 rbibutils_2.2.7 spatstat.core_2.4-0

Fix QC Seurat VlnPlots

  • Set scCustomize Palettes
  • Use VlnPlot_scCustom to provide raster support
  • Iterative version fix
  • Add Combined QC Vln Plot
  • Confirm that only setting low works on cutoff lines
  • Update vignettes

Clustered_DotPlot Error: number of cluster centres must lie between 1 and nrow(x)

Hi,
I installed the version from dev branch

Clustered_DotPlot(seurat_object = GBM_myeloid_obj, features = unique(myeloid_features), k = 5)

Error: number of cluster centres must lie between 1 and nrow(x)

I guess the k-means has some problem here. Maybe better to have an option to skip k-means.

Thanks again for making this!

> devtools::session_info()
โ”€ Session info โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 setting  value                       
 version  R version 4.1.1 (2021-08-10)
 os       Ubuntu 20.04.3 LTS          
 system   x86_64, linux-gnu           
 ui       RStudio                     
 language (EN)                        
 collate  en_US.UTF-8                 
 ctype    en_US.UTF-8                 
 tz       Etc/UTC                     
 date     2022-01-03                  

โ”€ Packages โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 package              * version    date       lib source                                   
 abind                  1.4-5      2016-07-21 [2] RSPM (R 4.1.0)                           
 assertthat             0.2.1      2019-03-21 [2] RSPM (R 4.1.0)                           
 backports              1.2.1      2020-12-09 [2] RSPM (R 4.1.0)                           
 beeswarm               0.4.0      2021-06-01 [1] RSPM (R 4.1.0)                           
 Biobase                2.52.0     2021-05-19 [1] Bioconductor                             
 BiocGenerics           0.38.0     2021-05-19 [1] Bioconductor                             
 bitops                 1.0-7      2021-04-24 [2] RSPM (R 4.1.0)                           
 broom                  0.7.9      2021-07-27 [2] RSPM (R 4.1.0)                           
 cachem                 1.0.6      2021-08-19 [2] RSPM (R 4.1.0)                           
 Cairo                  1.5-12.2   2020-07-07 [1] RSPM (R 4.1.1)                           
 callr                  3.7.0      2021-04-20 [2] RSPM (R 4.1.0)                           
 car                    3.0-12     2021-11-06 [1] RSPM (R 4.1.0)                           
 carData                3.0-4      2020-05-22 [1] RSPM (R 4.1.0)                           
 cellranger             1.1.0      2016-07-27 [2] RSPM (R 4.1.0)                           
 circlize               0.4.13     2021-06-09 [1] RSPM (R 4.1.0)                           
 cli                    3.0.1      2021-07-17 [2] RSPM (R 4.1.0)                           
 clue                   0.3-60     2021-10-11 [1] RSPM (R 4.1.0)                           
 cluster                2.1.2      2021-04-17 [3] CRAN (R 4.1.1)                           
 codetools              0.2-18     2020-11-04 [3] CRAN (R 4.1.1)                           
 colorspace             2.0-2      2021-06-24 [2] RSPM (R 4.1.0)                           
 colorway               0.2.0      2021-11-19 [1] Github (hypercompetent/colorway@8ba8f00) 
 ComplexHeatmap         2.8.0      2021-05-19 [1] Bioconductor                             
 cowplot                1.1.1      2020-12-30 [2] RSPM (R 4.1.0)                           
 crayon                 1.4.1      2021-02-08 [2] RSPM (R 4.1.0)                           
 curl                   4.3.2      2021-06-23 [2] RSPM (R 4.1.0)                           
 data.table             1.14.2     2021-09-27 [2] RSPM (R 4.1.0)                           
 DBI                    1.1.1      2021-01-15 [2] RSPM (R 4.1.0)                           
 dbplyr                 2.1.1      2021-04-06 [2] RSPM (R 4.1.0)                           
 DelayedArray           0.18.0     2021-05-19 [1] Bioconductor                             
 deldir                 0.2-10     2021-02-16 [2] RSPM (R 4.1.0)                           
 desc                   1.3.0      2021-03-05 [2] RSPM (R 4.1.0)                           
 devtools               2.4.2      2021-06-07 [2] RSPM (R 4.1.0)                           
 digest                 0.6.28     2021-09-23 [2] RSPM (R 4.1.0)                           
 distributional         0.2.2      2021-02-02 [1] RSPM (R 4.1.0)                           
 dittoSeq               1.7.0      2021-11-19 [1] Github (dtm2451/dittoSeq@b158b29)        
 doParallel             1.0.16     2020-10-16 [1] RSPM (R 4.1.0)                           
 dplyr                * 1.0.7      2021-06-18 [2] RSPM (R 4.1.0)                           
 ellipsis               0.3.2      2021-04-29 [2] RSPM (R 4.1.0)                           
 evaluate               0.14       2019-05-28 [2] RSPM (R 4.1.0)                           
 fansi                  0.5.0      2021-05-25 [2] RSPM (R 4.1.0)                           
 farver                 2.1.0      2021-02-28 [2] RSPM (R 4.1.0)                           
 fastmap                1.1.0      2021-01-25 [2] RSPM (R 4.1.0)                           
 fitdistrplus           1.1-5      2021-05-28 [2] RSPM (R 4.1.0)                           
 forcats              * 0.5.1      2021-01-27 [2] RSPM (R 4.1.0)                           
 foreach                1.5.1      2020-10-15 [1] RSPM (R 4.1.0)                           
 fs                     1.5.0      2020-07-31 [2] RSPM (R 4.1.0)                           
 future                 1.22.1     2021-08-25 [2] RSPM (R 4.1.0)                           
 future.apply           1.8.1      2021-08-10 [2] RSPM (R 4.1.0)                           
 generics               0.1.0      2020-10-31 [2] RSPM (R 4.1.0)                           
 GenomeInfoDb           1.28.4     2021-09-05 [1] Bioconductor                             
 GenomeInfoDbData       1.2.6      2021-11-19 [1] Bioconductor                             
 GenomicRanges          1.44.0     2021-05-19 [1] Bioconductor                             
 GetoptLong             1.0.5      2020-12-15 [1] RSPM (R 4.1.0)                           
 ggbeeswarm             0.6.0      2017-08-07 [1] RSPM (R 4.1.0)                           
 ggdist                 3.0.1      2021-11-30 [1] RSPM (R 4.1.0)                           
 ggplot2              * 3.3.5      2021-06-25 [2] RSPM (R 4.1.0)                           
 ggprism                1.0.3.9000 2021-11-19 [1] Github (csdaw/ggprism@e21c3ee)           
 ggpubr                 0.4.0      2020-06-27 [1] RSPM (R 4.1.0)                           
 ggrastr                1.0.1      2021-12-08 [1] RSPM (R 4.1.1)                           
 ggrepel                0.9.1      2021-01-15 [2] RSPM (R 4.1.0)                           
 ggridges               0.5.3      2021-01-08 [2] RSPM (R 4.1.0)                           
 ggsignif               0.6.3      2021-09-09 [1] RSPM (R 4.1.0)                           
 GlobalOptions          0.1.2      2020-06-10 [1] RSPM (R 4.1.0)                           
 globals                0.14.0     2020-11-22 [2] RSPM (R 4.1.0)                           
 glue                   1.4.2      2020-08-27 [2] RSPM (R 4.1.0)                           
 goftest                1.2-2      2019-12-02 [2] RSPM (R 4.1.0)                           
 gridExtra              2.3        2017-09-09 [2] RSPM (R 4.1.0)                           
 gtable                 0.3.0      2019-03-25 [2] RSPM (R 4.1.0)                           
 harmony              * 0.1.0      2021-06-02 [1] RSPM (R 4.1.0)                           
 haven                  2.4.3      2021-08-04 [2] RSPM (R 4.1.0)                           
 here                 * 1.0.1      2020-12-13 [2] RSPM (R 4.1.0)                           
 hms                    1.1.1      2021-09-26 [2] RSPM (R 4.1.0)                           
 htmltools              0.5.2      2021-08-25 [2] RSPM (R 4.1.0)                           
 htmlwidgets            1.5.4      2021-09-08 [2] RSPM (R 4.1.0)                           
 httpuv                 1.6.3      2021-09-09 [2] RSPM (R 4.1.0)                           
 httr                   1.4.2      2020-07-20 [2] RSPM (R 4.1.0)                           
 ica                    1.0-2      2018-05-24 [2] RSPM (R 4.1.0)                           
 igraph                 1.2.6      2020-10-06 [2] RSPM (R 4.1.0)                           
 IRanges                2.26.0     2021-05-19 [1] Bioconductor                             
 irlba                  2.3.3      2019-02-05 [2] RSPM (R 4.1.0)                           
 iterators              1.0.13     2020-10-15 [1] RSPM (R 4.1.0)                           
 janitor                2.1.0      2021-01-05 [1] RSPM (R 4.1.0)                           
 jsonlite               1.7.2      2020-12-09 [2] RSPM (R 4.1.0)                           
 KernSmooth             2.23-20    2021-05-03 [3] CRAN (R 4.1.1)                           
 knitr                  1.34       2021-09-09 [2] RSPM (R 4.1.0)                           
 labeling               0.4.2      2020-10-20 [2] RSPM (R 4.1.0)                           
 later                  1.3.0      2021-08-18 [2] RSPM (R 4.1.0)                           
 lattice                0.20-45    2021-09-22 [3] RSPM (R 4.1.0)                           
 lazyeval               0.2.2      2019-03-15 [2] RSPM (R 4.1.0)                           
 leiden                 0.3.9      2021-07-27 [2] RSPM (R 4.1.0)                           
 lifecycle              1.0.1      2021-09-24 [2] RSPM (R 4.1.0)                           
 listenv                0.8.0      2019-12-05 [2] RSPM (R 4.1.0)                           
 lmtest                 0.9-38     2020-09-09 [2] RSPM (R 4.1.0)                           
 lubridate              1.7.10     2021-02-26 [2] RSPM (R 4.1.0)                           
 magrittr               2.0.1      2020-11-17 [2] RSPM (R 4.1.0)                           
 MASS                   7.3-54     2021-05-03 [3] CRAN (R 4.1.1)                           
 Matrix                 1.3-4      2021-06-01 [3] CRAN (R 4.1.1)                           
 MatrixGenerics         1.4.3      2021-08-26 [1] Bioconductor                             
 matrixStats            0.61.0     2021-09-17 [2] RSPM (R 4.1.0)                           
 memoise                2.0.0      2021-01-26 [2] RSPM (R 4.1.0)                           
 mgcv                   1.8-37     2021-09-23 [3] RSPM (R 4.1.0)                           
 mime                   0.11       2021-06-23 [2] RSPM (R 4.1.0)                           
 miniUI                 0.1.1.1    2018-05-18 [2] RSPM (R 4.1.0)                           
 modelr                 0.1.8      2020-05-19 [2] RSPM (R 4.1.0)                           
 munsell                0.5.0      2018-06-12 [2] RSPM (R 4.1.0)                           
 nlme                   3.1-153    2021-09-07 [3] RSPM (R 4.1.0)                           
 paletteer              1.4.0      2021-07-20 [1] RSPM (R 4.1.0)                           
 parallelly             1.28.1     2021-09-09 [2] RSPM (R 4.1.0)                           
 patchwork              1.1.1      2020-12-17 [2] RSPM (R 4.1.0)                           
 pbapply                1.5-0      2021-09-16 [2] RSPM (R 4.1.0)                           
 pheatmap               1.0.12     2019-01-04 [1] RSPM (R 4.1.0)                           
 pillar                 1.6.3      2021-09-26 [2] RSPM (R 4.1.0)                           
 pkgbuild               1.2.0      2020-12-15 [2] RSPM (R 4.1.0)                           
 pkgconfig              2.0.3      2019-09-22 [2] RSPM (R 4.1.0)                           
 pkgload                1.2.2      2021-09-11 [2] RSPM (R 4.1.0)                           
 plotly                 4.9.4.1    2021-06-18 [2] RSPM (R 4.1.0)                           
 plyr                   1.8.6      2020-03-03 [2] RSPM (R 4.1.0)                           
 png                    0.1-7      2013-12-03 [2] RSPM (R 4.1.0)                           
 Polychrome             1.3.1      2021-07-16 [1] RSPM (R 4.1.0)                           
 polyclip               1.10-0     2019-03-14 [2] RSPM (R 4.1.0)                           
 prettyunits            1.1.1      2020-01-24 [2] RSPM (R 4.1.0)                           
 prismatic              1.1.0      2021-10-17 [1] RSPM (R 4.1.0)                           
 processx               3.5.2      2021-04-30 [2] RSPM (R 4.1.0)                           
 promises               1.2.0.1    2021-02-11 [2] RSPM (R 4.1.0)                           
 ps                     1.6.0      2021-02-28 [2] RSPM (R 4.1.0)                           
 purrr                * 0.3.4      2020-04-17 [2] RSPM (R 4.1.0)                           
 R6                     2.5.1      2021-08-19 [2] RSPM (R 4.1.0)                           
 RANN                   2.6.1      2019-01-08 [2] RSPM (R 4.1.0)                           
 RColorBrewer           1.1-2      2014-12-07 [2] RSPM (R 4.1.0)                           
 Rcpp                 * 1.0.7      2021-07-07 [2] RSPM (R 4.1.0)                           
 RcppAnnoy              0.0.19     2021-07-30 [2] RSPM (R 4.1.0)                           
 RCurl                  1.98-1.5   2021-09-17 [1] RSPM (R 4.1.0)                           
 readr                * 2.0.2      2021-09-27 [2] RSPM (R 4.1.0)                           
 readxl                 1.3.1      2019-03-13 [2] RSPM (R 4.1.0)                           
 rematch2               2.1.2      2020-05-01 [2] RSPM (R 4.1.0)                           
 remotes                2.4.0      2021-06-02 [2] RSPM (R 4.1.0)                           
 reprex                 2.0.1      2021-08-05 [2] RSPM (R 4.1.0)                           
 reshape2               1.4.4      2020-04-09 [2] RSPM (R 4.1.0)                           
 reticulate             1.22       2021-09-17 [2] RSPM (R 4.1.0)                           
 rjson                  0.2.20     2018-06-08 [1] RSPM (R 4.1.0)                           
 rlang                  0.4.11     2021-04-30 [2] RSPM (R 4.1.0)                           
 rmarkdown              2.11       2021-09-14 [2] RSPM (R 4.1.0)                           
 ROCR                   1.0-11     2020-05-02 [2] RSPM (R 4.1.0)                           
 rpart                  4.1-15     2019-04-12 [3] CRAN (R 4.1.1)                           
 rprojroot              2.0.2      2020-11-15 [2] RSPM (R 4.1.0)                           
 rstatix                0.7.0      2021-02-13 [1] RSPM (R 4.1.0)                           
 rstudioapi             0.13       2020-11-12 [2] RSPM (R 4.1.0)                           
 Rtsne                  0.15       2018-11-10 [2] RSPM (R 4.1.0)                           
 rvest                  1.0.1      2021-07-26 [2] RSPM (R 4.1.0)                           
 S4Vectors              0.30.2     2021-10-03 [1] Bioconductor                             
 scales                 1.1.1      2020-05-11 [2] RSPM (R 4.1.0)                           
 scattermore            0.7        2020-11-24 [2] RSPM (R 4.1.0)                           
 scatterplot3d          0.3-41     2018-03-14 [1] RSPM (R 4.1.0)                           
 scCustomize          * 0.6.3.0010 2022-01-03 [1] Github (samuel-marsh/scCustomize@2749725)
 sctransform            0.3.2      2020-12-16 [2] RSPM (R 4.1.0)                           
 sessioninfo            1.1.1      2018-11-05 [2] RSPM (R 4.1.0)                           
 Seurat               * 4.0.6      2021-12-16 [1] RSPM (R 4.1.0)                           
 SeuratObject         * 4.0.4      2021-11-23 [1] RSPM (R 4.1.0)                           
 shape                  1.4.6      2021-05-19 [1] RSPM (R 4.1.0)                           
 shiny                  1.7.0      2021-09-22 [2] RSPM (R 4.1.0)                           
 SingleCellExperiment   1.14.1     2021-05-21 [1] Bioconductor                             
 snakecase              0.11.0     2019-05-25 [1] RSPM (R 4.1.0)                           
 spatstat.core          2.3-0      2021-07-16 [2] RSPM (R 4.1.0)                           
 spatstat.data          2.1-0      2021-03-21 [2] RSPM (R 4.1.0)                           
 spatstat.geom          2.2-2      2021-07-12 [2] RSPM (R 4.1.0)                           
 spatstat.sparse        2.0-0      2021-03-16 [2] RSPM (R 4.1.0)                           
 spatstat.utils         2.2-0      2021-06-14 [2] RSPM (R 4.1.0)                           
 stringi                1.7.4      2021-08-25 [2] RSPM (R 4.1.0)                           
 stringr              * 1.4.0      2019-02-10 [2] RSPM (R 4.1.0)                           
 SummarizedExperiment   1.22.0     2021-05-19 [1] Bioconductor                             
 survival               3.2-13     2021-08-24 [3] RSPM (R 4.1.0)                           
 tensor                 1.5        2012-05-05 [2] RSPM (R 4.1.0)                           
 testthat               3.0.4      2021-07-01 [2] RSPM (R 4.1.0)                           
 tibble               * 3.1.4      2021-08-25 [2] RSPM (R 4.1.0)                           
 tidyr                * 1.1.4      2021-09-27 [2] RSPM (R 4.1.0)                           
 tidyselect             1.1.1      2021-04-30 [2] RSPM (R 4.1.0)                           
 tidyverse            * 1.3.1      2021-04-15 [2] RSPM (R 4.1.0)                           
 tzdb                   0.1.2      2021-07-20 [2] RSPM (R 4.1.0)                           
 usethis                2.0.1      2021-02-10 [2] RSPM (R 4.1.0)                           
 utf8                   1.2.2      2021-07-24 [2] RSPM (R 4.1.0)                           
 uwot                   0.1.10     2020-12-15 [2] RSPM (R 4.1.0)                           
 vctrs                  0.3.8      2021-04-29 [2] RSPM (R 4.1.0)                           
 vipor                  0.4.5      2017-03-22 [1] RSPM (R 4.1.0)                           
 viridis                0.6.2      2021-10-13 [1] RSPM (R 4.1.0)                           
 viridisLite            0.4.0      2021-04-13 [2] RSPM (R 4.1.0)                           
 withr                  2.4.2      2021-04-18 [2] RSPM (R 4.1.0)                           
 xfun                   0.26       2021-09-14 [2] RSPM (R 4.1.0)                           
 xml2                   1.3.2      2020-04-23 [2] RSPM (R 4.1.0)                           
 xtable                 1.8-4      2019-04-21 [2] RSPM (R 4.1.0)                           
 XVector                0.32.0     2021-05-19 [1] Bioconductor                             
 yaml                   2.2.1      2020-02-01 [2] RSPM (R 4.1.0)                           
 zlibbioc               1.38.0     2021-05-19 [1] Bioconductor                             
 zoo                    1.8-9      2021-03-09 [2] RSPM (R 4.1.0)                           

[1] /home/rstudio/R/x86_64-pc-linux-gnu-library/4.1-3.13
[2] /usr/local/lib/R/site-library
[3] /usr/local/lib/R/library

Add Cell Complexity

  • Add Seurat and LIGER functions
  • Update QC vignette
  • Add complexity plot??? Maybe

Fixing levels of grouping variables when splitting DimPlots

Hey,
sorry for already another feature request, but here it comes: When splitting DimPlots using split.by the number of levels of the grouping variable for group.by gets reduced to only the levels that are actually in the cells being plotted in every split. This is very distracting for example when u split a clustering result over many subplots and the colors for the clusters change in every subplot due to some of the clusters being specific for one of the covariates split by.

Thanks a lot,
Niko

Added features for `Percent_Expressing`

  • Support for setting individual expression thresholds for each feature supplied
  • Support for quantifying cells expressing two or more features simultaneously

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.