% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/visualization.R
\name{plot_qc_circular_heatmap}
\alias{plot_qc_circular_heatmap}
\title{Circular heatmap of control readouts across plates}
\usage{
plot_qc_circular_heatmap(
  data,
  value_cols = grep("_ctrl_", names(data), value = TRUE),
  plate_col = "plateID",
  split_col = "experimentID",
  col_breaks = c(0, 0.5, 1),
  col_colors = c("navy", "white", "firebrick3"),
  name = "Norm cell counts",
  show_sector_labels = TRUE
)
}
\arguments{
\item{data}{A data frame with one row per plate and numeric control columns,
such as \link{screen_plate_qc}.}

\item{value_cols}{Character vector of the control-value columns to display.
By default all columns matching \code{"_ctrl_"} are used.}

\item{plate_col}{Name of the plate identifier column (used as row names), as
a string. Default \code{"plateID"}.}

\item{split_col}{Optional name of a grouping column (experiment) used to
split the ring into sectors. Default \code{"experimentID"}.}

\item{col_breaks, col_colors}{Numeric breakpoints and matching colours passed
to \code{\link[circlize:colorRamp2]{circlize::colorRamp2()}}. Defaults map \code{0}/\code{0.5}/\code{1} to
navy/white/firebrick.}

\item{name}{Legend title. Default \code{"Norm cell counts"}.}

\item{show_sector_labels}{Logical, whether to label each sector. Default
\code{TRUE}.}
}
\value{
Invisibly \code{NULL}. Called for the side effect of drawing to the active
graphics device.
}
\description{
Draws a large circular (\pkg{circlize}) heatmap of the control-well readouts
for every plate, grouped into sectors by experiment. Each ring is one plate
and each cell one control well, so systematic control problems across a whole
screen become visible at once. This mirrors the summary \code{circos.heatmap}
used in the pipeline to display negative- and positive-control cell counts.
}
\details{
Requires the suggested package \pkg{circlize}; when
\pkg{ComplexHeatmap} is also installed a colour legend is added.
}
\examples{
\donttest{
if (requireNamespace("circlize", quietly = TRUE)) {
  plot_qc_circular_heatmap(screen_plate_qc)
}
}

}
\seealso{
\code{\link[=plot_control_scatter]{plot_control_scatter()}}, \code{\link[=plot_delta_auc_heatmap]{plot_delta_auc_heatmap()}}
}
