This page can be used as a template of how to use the available hermes
functions to produce a barplot of the dichotomized gene expression counts into two or three categories based on custom defined percentiles.
The draw_barplot()
function used below needs HermesData
as input. See RNAG1 for details on how to import, filter and normalize HermesData
.
We can create a barplot for gene expression counts of single genes by specifying a gene in the gene_spec
(gene specification) as follows. This function creates a scatterplot with the default percentiles (0.33, 0.67), to specify custom percentiles, please use the percentile
argument.
We can also specify a gene summary function for multiple genes, thereby using the corresponding gene signature. Note that here we just want to use the first 3 genes from the object
without explicitly specifying the gene IDs, and this can be done through the genes()
function in hermes
.
It is also possible to pass additional arguments to the function draw_barplot()
, ex. if we wish to specify an optional faceting variable or optional fill variable. See ?hermes::draw_barplot()
for details about the additional parameters available.
Code
We start by importing a MultiAssayExperiment
; here we use the example multi_assay_experiment
available in hermes
. It is wrapped as a teal::dataset
. We can then use the provided teal module tm_g_barplot
to have add a barplot module in our teal app.
Code
Warning: `datanames<-()` was deprecated in teal.data 0.7.0.
ℹ invalid to use `datanames()<-` or `names()<-` on an object of class
`teal_data`. See ?names.teal_data
Code
[INFO] 2025-02-19 17:30:40.7664 pid:6036 token:[] teal.modules.hermes Initializing tm_g_barplot
Warning: 'experiments' dropped; see 'drops()'
R version 4.4.2 (2024-10-31)
Platform: x86_64-pc-linux-gnu
Running under: Ubuntu 24.04.1 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so; LAPACK version 3.12.0
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] 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
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
time zone: Etc/UTC
tzcode source: system (glibc)
attached base packages:
[1] stats4 stats graphics grDevices utils datasets methods
[8] base
other attached packages:
[1] teal.modules.hermes_0.1.6 teal_0.16.0
[3] teal.slice_0.6.0 teal.data_0.7.0
[5] teal.code_0.6.1 shiny_1.10.0
[7] hermes_1.10.0 SummarizedExperiment_1.36.0
[9] Biobase_2.66.0 GenomicRanges_1.58.0
[11] GenomeInfoDb_1.42.3 IRanges_2.40.1
[13] S4Vectors_0.44.0 BiocGenerics_0.52.0
[15] MatrixGenerics_1.18.1 matrixStats_1.5.0
[17] ggfortify_0.4.17 ggplot2_3.5.1
loaded via a namespace (and not attached):
[1] RColorBrewer_1.1-3 jsonlite_1.9.0
[3] shape_1.4.6.1 MultiAssayExperiment_1.32.0
[5] magrittr_2.0.3 farver_2.1.2
[7] rmarkdown_2.29 GlobalOptions_0.1.2
[9] zlibbioc_1.52.0 vctrs_0.6.5
[11] memoise_2.0.1 webshot_0.5.5
[13] BiocBaseUtils_1.9.0 htmltools_0.5.8.1
[15] S4Arrays_1.6.0 forcats_1.0.0
[17] progress_1.2.3 curl_6.2.1
[19] SparseArray_1.6.1 sass_0.4.9
[21] bslib_0.9.0 fontawesome_0.5.3
[23] htmlwidgets_1.6.4 testthat_3.2.3
[25] httr2_1.1.0 cachem_1.1.0
[27] teal.widgets_0.4.3 mime_0.12
[29] lifecycle_1.0.4 iterators_1.0.14
[31] pkgconfig_2.0.3 webshot2_0.1.1
[33] Matrix_1.7-2 R6_2.6.1
[35] fastmap_1.2.0 GenomeInfoDbData_1.2.13
[37] rbibutils_2.3 clue_0.3-66
[39] digest_0.6.37 colorspace_2.1-1
[41] shinycssloaders_1.1.0 ps_1.9.0
[43] AnnotationDbi_1.68.0 DESeq2_1.46.0
[45] RSQLite_2.3.9 filelock_1.0.3
[47] labeling_0.4.3 httr_1.4.7
[49] abind_1.4-8 compiler_4.4.2
[51] bit64_4.6.0-1 withr_3.0.2
[53] doParallel_1.0.17 backports_1.5.0
[55] BiocParallel_1.40.0 DBI_1.2.3
[57] logger_0.4.0 biomaRt_2.62.1
[59] rappdirs_0.3.3 DelayedArray_0.32.0
[61] rjson_0.2.23 tools_4.4.2
[63] chromote_0.4.0 httpuv_1.6.15
[65] glue_1.8.0 callr_3.7.6
[67] promises_1.3.2 grid_4.4.2
[69] checkmate_2.3.2 cluster_2.1.8
[71] generics_0.1.3 gtable_0.3.6
[73] websocket_1.4.2 tidyr_1.3.1
[75] hms_1.1.3 xml2_1.3.6
[77] XVector_0.46.0 ggrepel_0.9.6
[79] foreach_1.5.2 pillar_1.10.1
[81] stringr_1.5.1 limma_3.62.2
[83] later_1.4.1 circlize_0.4.16
[85] dplyr_1.1.4 BiocFileCache_2.14.0
[87] lattice_0.22-6 bit_4.5.0.1
[89] tidyselect_1.2.1 ComplexHeatmap_2.22.0
[91] locfit_1.5-9.11 Biostrings_2.74.1
[93] knitr_1.49 gridExtra_2.3
[95] teal.logger_0.3.2 edgeR_4.4.2
[97] xfun_0.51 statmod_1.5.0
[99] brio_1.1.5 stringi_1.8.4
[101] UCSC.utils_1.2.0 yaml_2.3.10
[103] shinyWidgets_0.8.7 evaluate_1.0.3
[105] codetools_0.2-20 tibble_3.2.1
[107] cli_3.6.4 xtable_1.8-4
[109] Rdpack_2.6.2 jquerylib_0.1.4
[111] munsell_0.5.1 processx_3.8.5
[113] teal.reporter_0.4.0 Rcpp_1.0.14
[115] dbplyr_2.5.0 png_0.1-8
[117] parallel_4.4.2 assertthat_0.2.1
[119] blob_1.2.4 prettyunits_1.2.0
[121] scales_1.3.0 purrr_1.0.4
[123] crayon_1.5.3 GetoptLong_1.0.5
[125] rlang_1.1.5 formatR_1.14
[127] KEGGREST_1.46.0 shinyjs_2.1.0