Editing a track's plot as text
Every track whose display has color, grouping, rows, axis or filter settings has Advanced → Edit plot... in its track menu. It opens those settings as text, in the shape a config file writes them, so anything the menus and dialogs cannot express (a ramp, several threshold cuts, a typed section order, a filter expression) can be written directly. The Group by, Color by attribute and color dialogs also open it from a button, filled in with the choice you have made there but not yet applied.
What the box shows
The text holds the current values of this display's settings. A setting at its default is left out, as it would be in a config file. Show help links each setting to its row in the config reference. Which settings appear depends on the display:
| Display | Settings |
|---|---|
Alignments display (LinearAlignmentsDisplay) | unit, filter, facet, sort, color, scales, coverage, pileup, readConnections, baseColor, modifications, sashimi |
Chord synteny display (ChordSyntenyDisplay) | mark |
Chord variant display (ChordVariantDisplay) | mark, color |
Feature display (LinearBasicDisplay) | filter, color, facet, labels |
Hi-C contact matrix display (LinearHicDisplay) | color |
LD heatmap display (LDTrackDisplay) | color |
MAF display (LinearMafDisplay) | color, y, rows, rowColor, coverage, alignments, scales, conservation |
Manhattan plot display (LinearManhattanDisplay) | marks, transform, facet, rows, rowColor, scales, origin, filter |
Marks (LinearMarkDisplay) | marks, transform, facet, rows, rowColor, scales, origin, filter |
Multi-row feature display (painting) (LinearMultiRowFeatureDisplay) | rows, color, rowColor, facet |
Multi-sample variant display (LinearMultiSampleVariantDisplay) | filter, rows, unit, color, rowColor, facet, variants |
Multi-way synteny display (MultiWaySyntenyDisplay) | color, rows, ribbonColor, text, laneLayers |
Synteny alignments display (LGVSyntenyDisplay) | unit, filter, facet, sort, color, scales, coverage, pileup, readConnections |
Variant display (LinearVariantDisplay) | filter, color, facet, labels |
Wiggle display (LinearWiggleDisplay) | mark, rows, rowColor, color, y, origin, size, scales, extent |
Two of them split a track by a field: facet stacks labelled sections, one per
value, and rows draws one row per value, which a tree can order.
The circular view's chord displays have a plot too: mark, how deeply each
chord curves, and on the variant display color. Their Edit plot row is under
the view menu's Tracks entry, since a track on the circle has no label to hang a
menu off.
The Config reference link opens the display's page in the config reference, which spells out each setting's members.
Examples
The buttons above the text are worked examples for that display. A button fills the text with its example laid over the current settings, so you can read what it changes before applying it. For a feature track:
{ "facet": "strand", "color": { "field": "type" } }stacks one section per strand and colors each feature by its type.
Writing and applying
- The text is the whole plot: a setting or a member you delete returns to its default.
- An example lands over the plot as it stands and changes only what it names, so
an example writing a
filterlist keeps the filter's other tests in the text. - A string is a setting's one-value form, such as a facet's field or a constant color.
The line under the text lists which settings applying would set or reset, and Apply is disabled while the text is something the track's config would refuse, with the reason shown. A setting spelled another way but meaning the same thing changes nothing. Apply writes the settings onto the track, so they are kept with the session and Reset track settings returns them to the track's config.
From an agent or a script
A display exposes the same settings as plot: read display.plot, edit a copy,
check it with display.plotProblems(draft), and write it with
track.applyDisplaySettings(draft). A script's draft patches the plot, where
this box states it whole: a setting the draft leaves out stays, and null
resets one. See Agents and the live model.