View source: R/heatmaps-taxAnnotation.R
anno_tax_prev | R Documentation |
Use this as an argument to taxAnnotation(), which itself is used by cor_heatmap and comp_heatmap as tax_anno argument.
anno_tax_prev(
undetected = 0,
use_counts = TRUE,
size = grid::unit(20, "mm"),
baseline = 0,
border = TRUE,
bar_width = 0.6,
gp = grid::gpar(fill = "#CCCCCC"),
ylim = NULL,
extend = 0.05,
axis = TRUE,
...,
data = NULL,
taxa = NULL,
which = NULL
)
undetected |
the value above which taxa are classed as detected/present in a sample |
use_counts |
try to retrieve counts from data object? |
size |
width or height as a grid unit object |
baseline |
baseline of bars. The value should be "min" or "max", or a numeric value. It is enforced to be zero for stacked barplots. |
border |
Wether draw borders of the annotation region? |
bar_width |
Relative width of the bars. The value should be smaller than one. |
gp |
Graphic parameters for bars. The length of each graphic parameter can be 1, length of |
ylim |
Data ranges. By default it is |
extend |
The extension to both side of |
axis |
Whether to add axis? |
... |
Arguments passed on to
|
data |
OPTIONAL phyloseq or psExtra, only set this to override use of same data as in heatmap |
taxa |
OPTIONAL selection vector of taxa (names, numbers or logical), only set this if providing data argument to override default |
which |
OPTIONAL indicating if it is a 'column' or a 'row' annotation, only set this if providing data argument to override default |
function or ComplexHeatmap AnnotationFunction object
library("ComplexHeatmap")
data("ibd", package = "microViz")
psq <- tax_filter(ibd, min_prevalence = 5)
psq <- tax_mutate(psq, Species = NULL)
psq <- tax_fix(psq)
psq <- tax_agg(psq, rank = "Family")
taxa <- tax_top(psq, n = 15, rank = "Family")
# makes a function that takes data, taxa and which (at minimum)
fun <- anno_tax_prev()
# manually specify the prevalence barplot function by giving it data etc.
heatmapAnnoFunction <- fun(data = psq, which = "row", taxa = taxa)
# draw the barplot without a heatmap, you will never normally do this!
vp <- viewport(width = 0.75, height = 0.75)
grid::grid.newpage()
pushViewport(vp)
draw(heatmapAnnoFunction)
# let's change some style options and specify the data up front
grid::grid.newpage()
pushViewport(vp)
anno_tax_prev(
data = psq, taxa = taxa, which = "column",
gp = grid::gpar(fill = "red", lwd = 3, alpha = 0.5),
border = FALSE, bar_width = 1
) %>%
draw()
# clear drawings
grid::grid.newpage()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.