MultiWaySyntenyDisplay
Auto-generated from the config schema in the source — see the config guide for concepts. Provided by the linear-comparative-view plugin. View source.
Draws a multi-genome SyntenyTrack in a linear genome view as one lane per
assembly, with ribbons joining each gene's placements in adjacent lanes.
Example usage
Selected on a multi-genome SyntenyTrack (an MCScanBlocksAdapter listing
several assemblies) shown in a plain linear genome view. Draws one lane per
assembly in that assembly's own local coordinate frame — non-anchored, like
the multi-sample variant matrix — with ribbons connecting each gene's
placements between adjacent lanes:
{
type: 'SyntenyTrack',
trackId: 'grape_peach_cacao',
name: 'grape/peach/cacao orthologs',
assemblyNames: ['grape', 'peach', 'cacao'],
adapter: {
type: 'MCScanBlocksAdapter',
uri: 'grape.blocks',
blockAssemblies: ['grape', 'peach', 'cacao'],
bedLocations: [
{ uri: 'grape.bed' },
{ uri: 'peach.bed' },
{ uri: 'cacao.bed' },
],
},
displays: [
{
type: 'MultiWaySyntenyDisplay',
displayId: 'grape_peach_cacao-MultiWaySyntenyDisplay',
},
],
}The same display with a curated lane order, genes colored by ortholog cluster, and ribbons colored by percent identity:
{
type: 'SyntenyTrack',
trackId: 'primate_synteny',
name: 'Primate synteny',
assemblyNames: ['hg38', 'panTro6', 'gorGor6', 'ponAbe3'],
adapter: {
type: 'MCScanBlocksAdapter',
uri: 'hg38.blocks',
blockAssemblies: ['hg38', 'panTro6', 'gorGor6', 'ponAbe3'],
bedLocations: [
{ uri: 'hg38.bed' },
{ uri: 'panTro6.bed' },
{ uri: 'gorGor6.bed' },
{ uri: 'ponAbe3.bed' },
],
},
displays: [
{
type: 'MultiWaySyntenyDisplay',
displayId: 'primate_synteny-MultiWaySyntenyDisplay',
rows: { sort: ['panTro6', 'gorGor6', 'ponAbe3'] },
encoding: { color: 'cluster' },
ribbons: { encoding: { color: 'identity' } },
},
],
}Related links
- Adapter: BlastTabularAdapter
- Adapter: ChainAdapter
- Adapter: DeltaAdapter
- Adapter: MashMapAdapter
- Adapter: MCScanAnchorsAdapter
- Adapter: MCScanBlocksAdapter
- Adapter: MCScanSimpleAnchorsAdapter
- Adapter: MultiGenomeIndexedPAFAdapter
- Adapter: MultiGenomePAFAdapter
- Adapter: MultiPairwiseSyntenyAdapter
- Adapter: PAFAdapter
- Adapter: PairwiseIndexedPAFAdapter
- State model: runtime API
- Base config: BaseLinearDisplay
- Tutorial: Synteny from an ortholog table (grape, peach, cacao)
- Config guide: Grouping and lane order
- Config guide: Tracks
- Developer guide: Custom track and display types
Config slots
Display slots go on a display entry: "displays": [{ "type": "MultiWaySyntenyDisplay", ... }], or in the track's displayDefaults when this is its default display. 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 |
|---|---|
| encoding MultiWayGeneEncoding | The channels the gene glyphs paint through: encoding.color, their fill. |
utrColorcolor = '#357089' | the fill color of the untranslated parts of a gene glyph, matching the canvas gene track default callback args: feature |
| data SyntenyData | What the fetch reads, a SyntenyData object: resolution picks a tiered file's stored tier. |
| rows LaneRows | The lane order and the lanes drawn, which the Lanes menu, a header drag and the lane picker write. |
| ribbons MultiWayRibbons | The bands joining each gene's placements in adjacent lanes: ribbons.encoding.color paints them and ribbons.mark.interpolate curves their sides. |
hideUnlabelledboolean = false | under a text column, draw only the ribbons whose pair has a label |
laneGeneTracksstringArray = [] | the trackId of the gene track each lane draws, one per genome, or an entry spelling {assembly}, such as {assembly}-ncbiRefSeq, naming in each lane the track whose id has that lane's genome, or any of its aliases, written there. Plain ids outrank {assembly} entries, and an earlier entry outranks a later one. A lane whose genome no entry names draws the session's best-ranked annotation track for it, which on a config holding several gene sets per genome is whichever is declared first |
| legend Legend | The color key: the anchor lane's drawn gene colors, and what ribbons.encoding.color paints — the strand colors, the identity ramp, or a column's labels. Derived from what is on screen, so an encoding.color resolving to one color and a ribbon scale painting nothing key nothing. |
showLaneTicksboolean = true | draw each lane's coordinate ticks, at one interval shared by every lane. Equal spacing between two lanes means equal bp-per-pixel; a lane whose ticks crowd together is zoomed out. With this off, the header's span and multiple are the only scale shown |
textfeatureField = '' | The feature field, or jexl expression over feature, each lane's gene labels print; unset, the gene's name, else its ID. |
inlineLaneNamesboolean = false | print each lane's genome name over the left end of its gene row, without its coordinates, instead of on a line above the genes. The stack then fits 12 px less per lane |
showGeneLabelsboolean = true | print gene names in a row under each lane's genes, dropping a name where its neighbours leave it no room |
| laneLayers MultiWayLaneLayer | Rows of data every lane draws above its genes, each from that genome's own track: a GC or conservation bigWig per genome as bars, say |
splitStrandsboolean = true | draw each lane's genes in two rows either side of its line: the ones reading rightwards on screen above, leftwards below, so a flipped lane's genes turn over with it and a collinear block keeps one row down the stack. A lane too short for two rows draws one |
heightnumber = 240 | default height for the track |
| Inherited from BaseLinearDisplay | 2 slots |
fetchSizeLimitnumber = 1000000 | bytes a region may fetch before the display asks first; an adapter that sets its own limit overrides this advanced |
forceLoadboolean = false | Declarative equivalent of the "Force load" button on the "too much data" banner: when true the display always renders, however large the region or dense the features. Off by default (the gate guards against huge downloads). Set it on a view no one can interact with — an embedded / notebook view, or a screenshot — where the region is known and you want it drawn without a click. advanced |
Retired keys
An older config may still write these. Each loads without an error, and jbrowse validate reports it as stale.
| Key | On load |
|---|---|
maxFeatureScreenDensity | ignored |
maxDisplayedBpPerPx | ignored |
mouseover | ignored |
jexlFilters | moved into a current slot |
drawCurves | moved into a current slot |
bridgeSkippedLanes | ignored |