1. load libraries

library(dplyr)

Attachement du package : ‘dplyr’

Les objets suivants sont masqués depuis ‘package:stats’:

    filter, lag

Les objets suivants sont masqués depuis ‘package:base’:

    intersect, setdiff, setequal, union
library(Seurat)
Le chargement a nécessité le package : SeuratObject
Le chargement a nécessité le package : sp

Attachement du package : ‘SeuratObject’

Les objets suivants sont masqués depuis ‘package:base’:

    intersect, t

Registered S3 method overwritten by 'data.table':
  method           from
  print.data.table     
Registered S3 method overwritten by 'htmlwidgets':
  method           from         
  print.htmlwidget tools:rstudio
library(ComplexHeatmap)
Le chargement a nécessité le package : grid
========================================
ComplexHeatmap version 2.14.0
Bioconductor page: http://bioconductor.org/packages/ComplexHeatmap/
Github page: https://github.com/jokergoo/ComplexHeatmap
Documentation: http://jokergoo.github.io/ComplexHeatmap-reference

If you use it in published research, please cite either one:
- Gu, Z. Complex Heatmap Visualization. iMeta 2022.
- Gu, Z. Complex heatmaps reveal patterns and correlations in multidimensional 
    genomic data. Bioinformatics 2016.


The new InteractiveComplexHeatmap package can directly export static 
complex heatmaps into an interactive Shiny app with zero effort. Have a try!

This message can be suppressed by:
  suppressPackageStartupMessages(library(ComplexHeatmap))
========================================
# https://github.com/immunogenomics/presto
library(presto)
Le chargement a nécessité le package : Rcpp
Le chargement a nécessité le package : data.table
data.table 1.17.0 utilise 10 threads (voir ?getDTthreads).  Dernières actualités : r-datatable.com
**********
Running data.table in English; package support is available in English only. When searching for online help, be sure to also check for the English error message. This can be obtained by looking at the po/R-<locale>.po and po/<locale>.po files in the package source, where the native language and English error messages can be found side-by-side. You can also try calling Sys.setLanguage('en') prior to reproducing the error message.
**********

Attachement du package : ‘data.table’

Les objets suivants sont masqués depuis ‘package:dplyr’:

    between, first, last
library(tictoc)

Attachement du package : ‘tictoc’

L'objet suivant est masqué depuis ‘package:data.table’:

    shift
library(SCpubr)
---------------------------------------------------------------
SCpubr

If you use SCpubr in your research, please cite it accordingly: 
Blanco-Carmona, E. Generating publication ready visualizations for Single Cell transcriptomics using SCpubr. bioRxiv (2022) doi:10.1101/2022.02.28.482303.

If the package is useful to you, consider leaving a Star in the GitHub repo: https://github.com/enblacar/SCpubr/stargazers 

Keep track of the package updates on Twitter (@Enblacar) or in https://github.com/enblacar/SCpubr/blob/main/NEWS.md 

To suppress this startup message, use: 
suppressPackageStartupMessages(library('SCpubr'))
---------------------------------------------------------------

2. Load Seurat Object


#Load Seurat Object merged from cell lines and a control(PBMC) after filtration
load("../../To_Transfer_between_computers/23-Harmony_Integration/0-robj/5-Harmony_Integrated_All_samples_Merged_CD4Tcells_final_Resolution_Selected_0.8_ADT_Normalized_cleaned_mt.robj")

3. Generate an Azimuth report_l1

sample <- All_samples_Merged

rm(All_samples_Merged)

gc()
             used   (Mb) gc trigger    (Mb)   max used   (Mb)
Ncells    5438838  290.5    9176850   490.1    8365822  446.8
Vcells 1226705121 9359.1 1521274794 11606.5 1240803568 9466.6
out <- SCpubr::do_AzimuthAnalysisPlot(sample = sample,
                                      annotation.labels = "predicted.celltype.l1",
                                      annotation.scoring = "predicted.celltype.l1.score",
                                      font.size = 18)
Avis : The `slot` argument of `FetchData()` is deprecated as of SeuratObject 5.0.0.
Please use the `layer` argument instead.

Generate an Azimuth report_l1


out$report_portrait

NA
NA
NA

4. Generate an Azimuth report_l2


out_l2 <- SCpubr::do_AzimuthAnalysisPlot(sample = sample,
                                      annotation.labels = "predicted.celltype.l2",
                                      annotation.scoring = "predicted.celltype.l2.score",
                                      font.size = 18)

Generate an Azimuth report_l2


out_l2$report_portrait

Generate an Azimuth report_l2


out_l2$report_landscape

Generate an Azimuth report_l2


out_l2$mapping_scores


out_l2$umap_in_reference


out_l2$inferred_annotation

out_l2$umap_prediction


out_l2$umap_clusters


out_l2$barplot_pred


out_l2$barplot_orig


out_l2$annotation_scores

5. Generate an Azimuth report with the reference object.



# Retrieve reference.
reference <- readRDS("/isilon/homes/nabbasi/Visualization_Scripts/Azimuth_Analysis_report/ref.Rds")

# Set the identities of the object to match our inferred identities.
Seurat::Idents(reference) <- reference$celltype.l1 

# Generate an Azimuth report with the reference object.
out_ref <- SCpubr::do_AzimuthAnalysisPlot(sample = sample,
                                      annotation.labels = "predicted.celltype.l2",
                                      annotation.scoring = "predicted.celltype.l2.score",
                                      ref.obj = reference,
                                      ref.reduction = "ref.umap",
                                      font.size = 18)
Erreur : The provided reduction could not be found in the object: ref.umap

Generate an Azimuth report_l2


out_ref$report_portrait

Generate an Azimuth report_l2


out_ref$report_landscape

Generate an Azimuth report_l2


out_ref$umap_clusters


out_ref$inferred_annotation

out_ref$umap_in_reference

NA
NA
LS0tCnRpdGxlOiAiQXppbXV0aCBBbm5vdGF0aW9uIFJlcG9ydCIKYXV0aG9yOiAiTmFzaXIgTWFobW9vZCBBYmJhc2kiCmRhdGU6ICJgciBTeXMuRGF0ZSgpYCIKb3V0cHV0OgogIGh0bWxfbm90ZWJvb2s6CiAgICB0b2M6IHllcwogICAgdG9jX2Zsb2F0OiB5ZXMKICAgIHRvY19jb2xsYXBzZWQ6IHllcwogIHdvcmRfZG9jdW1lbnQ6CiAgICB0b2M6IHllcwogIGh0bWxfZG9jdW1lbnQ6CiAgICB0b2M6IHllcwogICAgZGZfcHJpbnQ6IHBhZ2VkCiAgcGRmX2RvY3VtZW50OgogICAgdG9jOiB5ZXMKLS0tCgoKIyAxLiBsb2FkIGxpYnJhcmllcwpgYGB7ciBzZXR1cCwgaW5jbHVkZT1UUlVFfQpsaWJyYXJ5KGRwbHlyKQpsaWJyYXJ5KFNldXJhdCkKbGlicmFyeShDb21wbGV4SGVhdG1hcCkKIyBodHRwczovL2dpdGh1Yi5jb20vaW1tdW5vZ2Vub21pY3MvcHJlc3RvCmxpYnJhcnkocHJlc3RvKQpsaWJyYXJ5KHRpY3RvYykKCmxpYnJhcnkoU0NwdWJyKQpgYGAKCgojIDIuIExvYWQgU2V1cmF0IE9iamVjdCAKYGBge3J9CgojTG9hZCBTZXVyYXQgT2JqZWN0IG1lcmdlZCBmcm9tIGNlbGwgbGluZXMgYW5kIGEgY29udHJvbChQQk1DKSBhZnRlciBmaWx0cmF0aW9uCmxvYWQoIi4uLy4uL1RvX1RyYW5zZmVyX2JldHdlZW5fY29tcHV0ZXJzLzIzLUhhcm1vbnlfSW50ZWdyYXRpb24vMC1yb2JqLzUtSGFybW9ueV9JbnRlZ3JhdGVkX0FsbF9zYW1wbGVzX01lcmdlZF9DRDRUY2VsbHNfZmluYWxfUmVzb2x1dGlvbl9TZWxlY3RlZF8wLjhfQURUX05vcm1hbGl6ZWRfY2xlYW5lZF9tdC5yb2JqIikKYGBgCgoKIyAzLiBHZW5lcmF0ZSBhbiBBemltdXRoIHJlcG9ydF9sMQpgYGB7cn0Kc2FtcGxlIDwtIEFsbF9zYW1wbGVzX01lcmdlZAoKcm0oQWxsX3NhbXBsZXNfTWVyZ2VkKQoKZ2MoKQoKb3V0IDwtIFNDcHVicjo6ZG9fQXppbXV0aEFuYWx5c2lzUGxvdChzYW1wbGUgPSBzYW1wbGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5ub3RhdGlvbi5sYWJlbHMgPSAicHJlZGljdGVkLmNlbGx0eXBlLmwxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbm5vdGF0aW9uLnNjb3JpbmcgPSAicHJlZGljdGVkLmNlbGx0eXBlLmwxLnNjb3JlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LnNpemUgPSAxOCkKCmBgYAoKCiMjIEdlbmVyYXRlIGFuIEF6aW11dGggcmVwb3J0X2wxCmBgYHtyLCBmaWcuaGVpZ2h0PTIwLCBmaWcud2lkdGg9MjV9CgpvdXQkcmVwb3J0X3BvcnRyYWl0CgoKCmBgYAoKCiMgNC4gR2VuZXJhdGUgYW4gQXppbXV0aCByZXBvcnRfbDIKYGBge3J9CgpvdXRfbDIgPC0gU0NwdWJyOjpkb19BemltdXRoQW5hbHlzaXNQbG90KHNhbXBsZSA9IHNhbXBsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbm5vdGF0aW9uLmxhYmVscyA9ICJwcmVkaWN0ZWQuY2VsbHR5cGUubDIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFubm90YXRpb24uc2NvcmluZyA9ICJwcmVkaWN0ZWQuY2VsbHR5cGUubDIuc2NvcmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQuc2l6ZSA9IDE4KQoKYGBgCgojIyBHZW5lcmF0ZSBhbiBBemltdXRoIHJlcG9ydF9sMgpgYGB7ciwgZmlnLmhlaWdodD0yMCwgZmlnLndpZHRoPTI1fQoKb3V0X2wyJHJlcG9ydF9wb3J0cmFpdAoKYGBgCgojIyBHZW5lcmF0ZSBhbiBBemltdXRoIHJlcG9ydF9sMgpgYGB7ciwgZmlnLmhlaWdodD0yMCwgZmlnLndpZHRoPTM1fQoKb3V0X2wyJHJlcG9ydF9sYW5kc2NhcGUKCmBgYAoKIyMgR2VuZXJhdGUgYW4gQXppbXV0aCByZXBvcnRfbDIKYGBge3IsIGZpZy5oZWlnaHQ9MTIsIGZpZy53aWR0aD0xNn0KCm91dF9sMiRtYXBwaW5nX3Njb3JlcwoKb3V0X2wyJHVtYXBfaW5fcmVmZXJlbmNlCgpvdXRfbDIkaW5mZXJyZWRfYW5ub3RhdGlvbgoKb3V0X2wyJHVtYXBfcHJlZGljdGlvbgoKb3V0X2wyJHVtYXBfY2x1c3RlcnMKCm91dF9sMiRiYXJwbG90X3ByZWQKCm91dF9sMiRiYXJwbG90X29yaWcKCm91dF9sMiRhbm5vdGF0aW9uX3Njb3JlcwoKYGBgCgoKCgojIDUuIEdlbmVyYXRlIGFuIEF6aW11dGggcmVwb3J0IHdpdGggdGhlIHJlZmVyZW5jZSBvYmplY3QuCmBgYHtyfQoKCiMgUmV0cmlldmUgcmVmZXJlbmNlLgpyZWZlcmVuY2UgPC0gcmVhZFJEUygiL2lzaWxvbi9ob21lcy9uYWJiYXNpL1Zpc3VhbGl6YXRpb25fU2NyaXB0cy9BemltdXRoX0FuYWx5c2lzX3JlcG9ydC9yZWYuUmRzIikKCiMgU2V0IHRoZSBpZGVudGl0aWVzIG9mIHRoZSBvYmplY3QgdG8gbWF0Y2ggb3VyIGluZmVycmVkIGlkZW50aXRpZXMuClNldXJhdDo6SWRlbnRzKHJlZmVyZW5jZSkgPC0gcmVmZXJlbmNlJGNlbGx0eXBlLmwxIAoKIyBHZW5lcmF0ZSBhbiBBemltdXRoIHJlcG9ydCB3aXRoIHRoZSByZWZlcmVuY2Ugb2JqZWN0LgpvdXRfcmVmIDwtIFNDcHVicjo6ZG9fQXppbXV0aEFuYWx5c2lzUGxvdChzYW1wbGUgPSBzYW1wbGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5ub3RhdGlvbi5sYWJlbHMgPSAicHJlZGljdGVkLmNlbGx0eXBlLmwyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbm5vdGF0aW9uLnNjb3JpbmcgPSAicHJlZGljdGVkLmNlbGx0eXBlLmwyLnNjb3JlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWYub2JqID0gcmVmZXJlbmNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZi5yZWR1Y3Rpb24gPSAicmVmVU1BUCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC5zaXplID0gMTgpCgpgYGAKCiMjIEdlbmVyYXRlIGFuIEF6aW11dGggcmVwb3J0X2wyCmBgYHtyLCBmaWcuaGVpZ2h0PTIwLCBmaWcud2lkdGg9MjV9CgpvdXRfcmVmJHJlcG9ydF9wb3J0cmFpdAoKYGBgCgoKIyMgR2VuZXJhdGUgYW4gQXppbXV0aCByZXBvcnRfbDIKYGBge3IsIGZpZy5oZWlnaHQ9MjAsIGZpZy53aWR0aD0zNX0KCm91dF9yZWYkcmVwb3J0X2xhbmRzY2FwZQoKYGBgCgoKCiMjIEdlbmVyYXRlIGFuIEF6aW11dGggcmVwb3J0X2wyCmBgYHtyLCBmaWcuaGVpZ2h0PTEyLCBmaWcud2lkdGg9MTZ9CgpvdXRfcmVmJHVtYXBfY2x1c3RlcnMKCm91dF9yZWYkaW5mZXJyZWRfYW5ub3RhdGlvbgoKb3V0X3JlZiR1bWFwX2luX3JlZmVyZW5jZQoKCmBgYA==