Rows
Auto-generated from the config schema in the source. See the config guide for concepts. Built into JBrowse core. View source.
The rows setting of the displays that draw one row per value of a field,
with the dendrogram sidebar beside them: a RowArrangement
plus the field, filter, which narrows the rows by attribute,
annotations, the attributes drawn as color columns beside the labels, and
an axis with grid. A string is the field; the arrangement members name rows by
value of the field, so a write changing it clears them.
Example usage
{ type: 'LinearWiggleDisplay', rows: 'source' }{ type: 'LinearMultiRowFeatureDisplay', rows: 'sample' }{
type: 'LinearWiggleDisplay',
rows: { field: 'source', sort: ['tumor', 'normal'], labels: { tumor: 'Tumor' } },
}Related links
- Extended by: QuantitativeRows
- Extended by: RowsWithStep
- Base config: RowArrangement
- Developer guide: Upgrading to v5
Config slots
Slot types (fileLocation, frozen, ...) are explained in the config slot types reference. Slots a base configuration contributes are listed here too, so this table is the whole surface.
| Slot | Description |
|---|---|
fieldfeatureField = '' |
The field whose values each take a row. Writing rows: "source" sets this slot. Empty is the display's default: no rows on the quantitative display, and a field picked off the data on the multi-row feature display. |
| filter RowPredicate |
The rows shown by attribute: a list of RowPredicate entries over a row attribute, each one a row must pass: a samplesTsv column on the variant display ([{ field: 'population', oneOf: ['EUR', 'AFR'] }]), a subtrack's field such as group on wiggle, and group, which rows.groups derives, on the mark displays. A row missing the attribute fails every test but valid: false. It narrows the rows before kept, and a write changing field keeps it, since it names no row by its value; a row's name goes in kept. |
| annotations RowAnnotation |
Extra color columns beside the row labels, one per row attribute, as ggtree's gheatmap and ComplexHeatmap's row annotation draw them: a list of RowAnnotation entries, each a field or { field, scale: { domain, range, unknown }, legend: { title } }, drawn in the order listed after the row's own color. Categorical only: each value of the field takes a color the way rows.color deals one, a row with no value leaves a gap, a field no row carries draws nothing, and each column gets a key titled legend.title, else the field. An entry with no field, or on name, is refused, and one on the rows.color field draws no column of its own, since the row color is that column. Where the row color paints no mark and shows only beside the label (the variant display, and wiggle while a score gradient paints), it is the first column, the one whose key focuses rows and whose colors rows.colors pins. It reorders no row, so under one tree several attributes read against the same clusters. Like filter it names no row: "Reset row order" and a write changing field keep it. |
| axis RowAxisWithGrid |
The guide down the left of the rows, a RowAxisWithGrid: whether the tree and the row names draw, the sidebar's width, and a line between rows. What it draws is rows.tree and rows.labels. |
| Inherited from RowArrangement | 6 slots |
sortstringArray of strings or numbers = [] |
The row order, as Vega-Lite's sort lists it: the rows listed lead, in this order, and none is dropped. The rest keep the order their source lists them in (a VCF's samples, a multi-BigWig's subtracks), or sort, digits by magnitude, where the rows are values found on features. A clustering run, the arrangement dialog and "Sort rows here" all write it, and a run rotates its dendrogram towards it rather than discarding it. |
labelsstringMap = {} |
A label drawn beside a row in place of its name, by name. Whether any label draws is rows.axis.labels. |
| tree RowTree |
The dendrogram beside the rows, a RowTree: newick, or { newick, provenance } where a clustering run wrote it beside the order it produced. A reorder that moves a row drops it. Whether it draws is rows.axis.tree. The rows follow the tree's leaves, then rows.sort for any rows the tree lacks; a supplied tree rotates towards rows.sort, so a sort also decides which way each clade faces. |
colorsstringMap = {} |
A color pinned on a row, by name, over whatever rows.color maps it to, as labels pins its text: ggplot2's scale_*_manual(values = c(name = ...)). The arrangement dialog's row swatches write it. A row with none takes rows.color, else the file's own color (MAF's samples[].color, a listed source's color), else the palette where the rows share one panel. |
| color RowColor |
The rows colored by an attribute: a RowColor channel from a row field through a scale, name (each row) by default. Per-row colors are rows.colors, which win over it. |
keptstringArray of strings or numbers = [] |
The rows shown, by name: a clade picked off the tree, or the rows one key row stands for. It narrows the rows to those it names, after filter where the display declares one; empty shows every row, and a list naming no current row shows none, with a notice. Keyed: a write changing field clears it. |