From d468d3b9cd62e0e7030f7efde779fb9eb6d88c2a Mon Sep 17 00:00:00 2001 From: phoman14 Date: Tue, 13 Oct 2026 18:47:21 -0400 Subject: [PATCH 1/2] feat: log Heatmap sample filtering --- R/Heatmap.R | 13 +++++++++++++ tests/testthat/test-Heatmap.R | 17 ++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/R/Heatmap.R b/R/Heatmap.R index f86a775..7c214a5 100755 --- a/R/Heatmap.R +++ b/R/Heatmap.R @@ -400,6 +400,16 @@ heatmapSC <- function(object, } stop("Could not find requested sample name column: ", sample.name.column) } + + requested.samples <- if (length(samples.to.include) > 0) { + paste(shQuote(samples.to.include), collapse = ", ") + } else { + "" + } + message( + "Filtering samples using metadata column '", sample.name.column, "': ", + requested.samples + ) #Set up annotation track: metadata.table <- object@meta.data[ @@ -414,6 +424,9 @@ heatmapSC <- function(object, sample.name.column ) } + message( + "Displaying ", nrow(metadata.table), "/", nrow(object@meta.data), " cells." + ) annot <- metadata.table %>% select(all_of(metadata)) a = dim(annot)[2] - 1 diff --git a/tests/testthat/test-Heatmap.R b/tests/testthat/test-Heatmap.R index 76c49a4..a578acd 100755 --- a/tests/testthat/test-Heatmap.R +++ b/tests/testthat/test-Heatmap.R @@ -54,7 +54,22 @@ test_that("Heatmap supports a custom sample name column", { cr.object$object@meta.data[["sample.name_1.2"]] == selected.sample ] - output <- do.call(heatmapSC, cr.object) + expect_message( + output <- do.call(heatmapSC, cr.object), + paste0( + "Filtering samples using metadata column 'sample.name_1.2': '", + selected.sample, "'" + ), + fixed = TRUE + ) + expect_message( + do.call(heatmapSC, cr.object), + paste0( + "Displaying ", length(expected.cells), "/", + nrow(cr.object$object@meta.data), " cells." + ), + fixed = TRUE + ) expect_setequal(names(output), c("plots", "data")) expect_setequal(colnames(output$data)[-1], expected.cells) From ee3736beff078c8e950fa47c324b41566278adb2 Mon Sep 17 00:00:00 2001 From: phoman14 Date: Tue, 13 Oct 2026 18:47:47 -0400 Subject: [PATCH 2/2] docs: note Heatmap filter logging --- NEWS.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/NEWS.md b/NEWS.md index 3f0304a..024b7c2 100644 --- a/NEWS.md +++ b/NEWS.md @@ -6,4 +6,5 @@ ## heatmapSC -* Add `sample.name.column` to select the metadata column used for sample filtering, defaulting to `orig.ident` (#100). \ No newline at end of file +* Add `sample.name.column` to select the metadata column used for sample filtering, defaulting to `orig.ident` (#100). +* Log requested sample filtering and displayed filtered/total cell counts (#101). \ No newline at end of file