Description Slot overview Supported methods Subclass expectations Author(s) See Also
The ColumnDotPlot is a virtual class where each column in the SummarizedExperiment is represented by no more than one point (i.e., a “dot”) in a brushable ggplot plot.
It provides slots and methods to extract colData
fields to control the per-point aesthetics on the plot.
This panel will transmit column identities in both its single and multiple selections, and it can receive multiple column selections but not multiple row selections.
The following slots control coloring of the points:
ColorByColumnData
, a string specifying the colData
field for controlling point color,
if ColorBy="Column data"
(see the Panel class).
Defaults to the first valid field (see .refineParameters
below).
ColorByFeatureNameAssay
, a string specifying the assay of the SummarizedExperiment object containing values to use for coloring,
if ColorBy="Feature name"
.
Defaults to the name of the first valid assay (see ?".refineParameters,DotPlot-method"
for details).
ColorBySampleNameColor
, a string specifying the color to use for coloring an individual sample on the plot,
if ColorBy="Sample name"
.
Defaults to "red"
.
The following slots control other metadata-related aesthetic aspects of the points:
ShapeByColumnData
, a string specifying the colData
field for controlling point shape,
if ShapeBy="Column data"
(see the Panel class).
The specified field should contain categorical values; defaults to the first such valid field.
SizeByColumnData
, a string specifying the colData
field for controlling point size,
if SizeBy="Column data"
(see the Panel class).
The specified field should contain continuous values; defaults to the first such valid field.
In addition, this class inherits all slots from its DotPlot and Panel classes.
In the following code snippets, x
is an instance of a ColumnDotPlot class.
Refer to the documentation for each method for more details on the remaining arguments.
For setting up data values:
.cacheCommonInfo(x)
adds a "ColumnDotPlot"
entry containing valid.colData.names
, a character vector of names of columns that are valid (i.e., contain atomic values); discrete.colData.names
, a character vector of names for columns with discrete atomic values; and continuous.colData.names
, a character vector of names of columns with continuous atomic values.
This will also call the equivalent DotPlot method.
.refineParameters(x, se)
replaces NA
values in ColorByFeatAssay
with the first valid assay name in se
.
This will also call the equivalent DotPlot method.
For defining the interface:
.hideInterface(x, field)
returns a logical scalar indicating whether the interface element corresponding to field
should be hidden.
This returns TRUE
for row selection parameters ("RowSelectionSource"
, "RowSelectionType"
and "RowSelectionSaved"
),
otherwise it dispatches to the Panel method.
For monitoring reactive expressions:
.createObservers(x, se, input, session, pObjects, rObjects)
sets up observers for all slots described above and in the parent classes.
This will also call the equivalent DotPlot method.
For controlling selections:
.multiSelectionDimension(x)
returns "column"
to indicate that a column selection is being transmitted.
.singleSelectionDimension(x)
returns "sample"
to indicate that a sample identity is being transmitted.
For documentation:
.definePanelTour(x)
returns an data.frame containing the steps of a tour relevant to subclasses,
mostly tuning the more generic descriptions from the same method of the parent DotPlot.
Unless explicitly specialized above, all methods from the parent classes DotPlot and Panel are also available.
Subclasses are expected to implement methods for, at least:
.generateDotPlotData
.fullName
.panelColor
The method for .generateDotPlotData
should create a plot.data
data.frame with one row per column in the SummarizedExperiment object.
Aaron Lun
DotPlot, for the immediate parent class that contains the actual slot definitions.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.