% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/visualization.R
\name{plot_control_scatter}
\alias{plot_control_scatter}
\title{Scatter plot of control readouts across plates}
\usage{
plot_control_scatter(
  data,
  plate_col = "plateID",
  neg_cols = grep("^neg_ctrl", names(data), value = TRUE),
  pos_cols = grep("^pos_ctrl", names(data), value = TRUE),
  colors = c(`Negative control` = "#0072B2", `Positive control` = "#D55E00"),
  y_title = "Normalized cell count"
)
}
\arguments{
\item{data}{A data frame with one row per plate and several negative- and
positive-control replicate columns (wide format, such as
\link{screen_plate_qc}).}

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

\item{neg_cols, pos_cols}{Character vectors naming the negative- and
positive-control replicate columns. By default columns matching
\code{"^neg_ctrl"} and \code{"^pos_ctrl"} are used.}

\item{colors}{Named character vector giving the point colours for the two
control groups.}

\item{y_title}{Y-axis title. Default \code{"Normalized cell count"}.}
}
\value{
A \link[ggplot2:ggplot]{ggplot2::ggplot} object: control readouts (points, dodged and
jittered) per plate, coloured by control type, with the y-axis expanded to
include zero.
}
\description{
Draws, for each plate, the individual negative- and positive-control well
readouts (for example normalised cell counts) so that plate-to-plate control
behaviour and separation can be inspected at a glance. This is the standard
QC view used to confirm that negative controls stay high and positive
controls stay low across an entire screen.
}
\examples{
plot_control_scatter(screen_plate_qc)

}
\seealso{
\code{\link[=plot_qc_boxplot]{plot_qc_boxplot()}}, \code{\link[=plot_qc_circular_heatmap]{plot_qc_circular_heatmap()}}
}
