LinearCanvasBaseDisplay
Auto-generated from the config schema in the source — see the config guide for concepts. Provided by the canvas plugin. View source.
Holds the slots shared by the canvas-drawn linear feature displays, which stack overlapping features in rows (pileup-style glyphs).
Related links
- Extended by: LinearBasicDisplay
- Extended by: LinearVariantDisplay
- State model: runtime API
- Base config: BaseLinearDisplay
- Config guide: Customizing feature colors
- Config guide: Tracks
- Docs: Cookbook
Config slots
LinearCanvasBaseDisplay is a shared base schema, not a type you name in a config. Set these slots on one of the configs under Extended by above, each of which lists them as inherited and shows the shape in its own example. 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 |
|---|---|
mouseoverstring = | text to display when the cursor hovers over a feature callback args: feature |
maxFeatureScreenDensitynumber = 1 | maximum features per pixel before showing a "too many features" message advanced |
showLegendboolean = true | show the display's color key when it has one: the key a color field derives, or a variant track's consequence-impact / SV-type presets. |
showLabelsstringEnum (auto, nameAndDescription, name, description, none) = 'auto' | Label text drawn beside each feature: "auto" adapts to zoom, dropping descriptions at maxDescriptionFeatureDensity and names at maxLabelFeatureDensity; "nameAndDescription", "name", "description", and "none" pin a choice at every zoom. Defaults to auto. Replaces the former showLabels on/off enum + showDescriptions boolean pair |
maxLabelFeatureDensitynumber = 0.2 | In "auto" showLabels mode, hide labels when visible feature density (features/pixel) exceeds this value advanced |
maxDescriptionFeatureDensitynumber = 0.1 | In "auto" showLabels mode, hide descriptions when visible feature density (features/pixel) exceeds this value. Lower than maxLabelFeatureDensity so descriptions drop before names advanced |
| color FeatureColor | The main fill of each feature: a CSS color or a jexl expression ("goldenrod", "jexl:…"), or { field, domain, range } to paint each value of a field its own range color, with a key. |
showOutlineboolean = false | draw an outline around each feature |
outlineColormaybeColor | the outline's color while showOutline draws one; unset takes the theme's |
featureHeightnumber = 10 | height in pixels of the main body of each feature callback args: feature |
displayModestringEnum (normal, compact, superCompact, collapsed) = 'normal' | Feature height preset, normal by default; compact and superCompact shrink the rows, and collapsed packs every feature onto a single row with all labels hidden |
| facet SectionFacet | One labelled section of the track per value of a field: "strand", or { field, domain } with the order its sections stack in. |
labels.namefeatureField = 'jexl:get(feature,'name') || get(feature,'id')' | the field each feature's name label reads, such as gene_name, or a jexl: expression over feature; the default reads the name, else the ID, and an empty value draws no name |
labels.descriptionfeatureField = | the field each feature's description line reads, such as note, or a jexl: expression over feature; the default reads note, else description, else function, and an empty value draws no description |
heightModestringEnum (fixed, grow, fit) = 'fit' | Track-sizing strategy — how the track responds when there are more features than fit (shared vocabulary with the alignments display, exposed in the "Track sizing" menu). fit (the default) keeps the track height and gives up descriptions, then isoforms, then names, then squeezes boxes down to 2px, and scrolls only what still overflows; fixed keeps a scrollable fixed height; grow expands the track to show all features. Orthogonal to the per-feature size set by displayMode, which fit never enlarges. |
growMaxHeightnumber = 800 | Ceiling in pixels for the "autogrow track height" sizing mode; a track with more content than this grows to the ceiling and scrolls the rest. Does not apply to the fixed or fit modes advanced |
filterexpressionArray = [] | jexl: expressions a feature must pass to be drawn |
| Inherited from BaseLinearDisplay | 3 slots |
heightnumber = 100 | default height for the track |
fetchSizeLimitnumber = 1_000_000 | maximum data to attempt to download for a given track, used if adapter doesn't specify one 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 |