LinearHicDisplay
Auto-generated from the @jbrowse/mobx-state-tree model in the source — see the developer guide for concepts. Provided by the hic plugin. View source.
Example usage
A HicTrack whose display pins the color scale's top, so two tracks set
alike share one scale, and runs one binsize coarser than the zoom picks:
{
type: 'HicTrack',
trackId: 'hic',
name: 'Hi-C',
assemblyNames: ['hg38'],
adapter: { type: 'HicAdapter', uri: 'https://example.com/contacts.hic' },
displays: [
{
type: 'LinearHicDisplay',
displayId: 'hic-LinearHicDisplay',
color: { scale: 'log', domainMax: 500 },
resolutionBias: 1,
},
],
}The Hi-C contact matrix as a triangle over the view.
The configuration slots for this model are documented on its config schema page.
Each section ends with the members a composed model contributes, linked to the page that documents them.
Properties
| Member | Description |
|---|---|
typetype: types.literal('LinearHicDisplay') | |
configurationconfiguration: ConfigurationReference(configSchema) |
1 inherited property from one model
From BaseDisplay: id
Volatiles
| Member | Description |
|---|---|
fileInfoAdapterRead<HicFileInfo> | undefined | The file's normalizations and binsizes, stamped with the adapter config they answer. |
24 inherited volatiles from 8 models
From BaseDisplay: error, statusMessage, statusProgress
From TrackHeightMixin: scrollTop, hostHeight
From RegionTooLargeMixin: forceLoadTrack, byteEstimate, gateMeasuredViewportKey
From RenderLifecycleMixin: canvasDrawn, paintCount, currentRenderingBackend, renderTick, autorunsInstalled, renderError, offScreen
From KeyedFetchMixin: loadedFetchKey
From FetchMixin: activeSignal, fetchGeneration, reloadCounter, statusWindow, fetchCanceled, fetchRotation
From LegendMixin: dismissedLegendSections
From TriangleMatrixMixin: rpcData
Getters
| Member | Description |
|---|---|
availableNormalizationsstring[] | undefined | |
availableResolutionsnumber[] | undefined | Smallest first, so a negative resolutionBias is always finer. |
resolutionBiasnumber | |
colorEncodingHicColorEncoding | The color object as it paints, through the shared reader and count's preset: a linear or log ramp whose reverse, where unset, follows whether the scheme runs dark at its low end. The scheme and domainQuantile slots have defaults, so both are always set. |
noticesstring[] | What the color object says that cannot paint as written, as the corner indicator lists it: the same lines plotProblems and jbrowse validate report. |
colorScaleType"linear" | "log" | |
| colorScheme | |
colorReverseboolean | color.reverse, or where unset whether the scheme runs dark at its low end. |
colorRampUint8Array<ArrayBufferLike> | The ramp's 256 entries: the GPU's texture, the Canvas2D fill and the legend read this one table. It reads colorScheme and colorReverse rather than the encoding, so a domain edit re-uploads no texture. |
colorQuantilenumber | color.domainQuantile: the quantile of the loaded counts an unset domainMax follows, their maximum at 1. |
colorFollowsPercentileboolean | Whether an unset color.domainMax saturates at colorQuantile rather than the counts' maximum. |
saturationQuantilenumber | The quantile "Emphasize faint contacts" saturates at: colorQuantile while it clips, else the one ticking it writes. The worker computes this one whichever is drawn, so the toggle refetches nothing. |
showResolutionControlsboolean | |
selectedNormalizationstring | |
hasResolutionsboolean | Whether the binsize list has arrived; every resolution control gates on it. |
activeNormalizationstring | The normalization to request: the selection where the file has it, else the next best it does. A getter, so a file lacking the selection never marks the track edited. |
colorDomain[number, number] | The domain the counts are colored over, as every ramp spans one: a pinned end holds, and an open one follows the loaded counts from 0, the top at their colorQuantile below 1, else their maximum. |
awaitingPrerequisiteboolean | Retry is two-stage: the contact fetch declines until the header it needs lands, and the header's arrival wakes it. infoFetchFailure.test.ts pins it. |
showResolutionBoxboolean | Whether the resolution box is up; the chrome starts the key below it. |
legendTopnumber | |
appliedNormalizationstring | The normalization the loaded matrix carries, which falls back per binsize (KR at 5 kb, nothing at 2.5 Mb is typical). The menu ticks this. Fetch-derived, so it stays out of rpcProps(). |
scaleTypeScaleTypeCode | |
autoResolutionIdxnumber | The binsize index auto mode picks: the largest at most 2 bp/px, about half a bin per pixel, else the finest. |
colorScalesColorScale[] | The count ramp, once there is a domain to span. The ends are where the ramp paints them, and a top below the largest loaded count reads ≥. |
effectiveResolutionIdxnumber | The index in effect after resolutionBias, clamped so a bias set at another zoom cannot index out of range. |
valueLabelstring | What the tooltip calls a bin's value. |
effectiveResolutionnumber | undefined | |
canStepResolutionFinerboolean | |
canStepResolutionCoarserboolean | |
renderStateHicRenderState | |
viewSignaturestring | undefined | The static blocks plus the binsize, so a pan inside them redraws and only a block entering or a binsize step refetches. Undefined until the header lands. |
73 inherited getters from 9 models
From BaseDisplay: parentTrack, RenderingComponent, DisplayBlurb, adapterConfig, isMinimized, hoveredFeature, featureNoun, featureWidgetType, plotKeys, plot, plotExamples, configDocsUrl
From TrackHeightMixin: configuredHeight, allottedHeight, height, resizing, scrollContentHeight, scrollViewportHeight, scrollableHeight
From GlobalFetchMixin: host, staticBlockSignature, dynamicBlockSignature, viewportEmpty, canRender, rendersCanvas, paintInert, svgReady, displayPhase
From RegionTooLargeMixin: gateEnabled, byteGateAdapterConfig, configuredFetchSizeLimit, densityTooLarge, byteGateAdapterPath, adapterFetchSizeLimit, configForceLoad, gateViewportSpanBp, gateViewport, aboveForceLoadFloor, gateExempt, estimatedFetchBytes, gateMeasurementStale, gateByteLimit, gateActive, densityGateActive, tooLargeStatus, regionTooLarge, regionTooLargeReason, zoomCanReleaseGate, gateSkipsMeasuredViewport
From RenderLifecycleMixin: paintSuperseded, painted
From KeyedFetchMixin: dataSuperseded, currentFetchKey, dataCurrent
From FetchMixin: isLoading, isLoadingOrCanceled, fetchInert, awaitingDependentData, settingsFetchInputs
From LegendMixin: showLegend, legendRight, legendSpec, hasLegendKey
From TriangleMatrixMixin: squashToHeight, matrixTop, canvasWidth, viewTransform, matrixRegions, matrixHeight, matrixBlocks, yScalar, triangleTransform, triangleFrame
Methods
| Member | Description |
|---|---|
rpcProps() => { normalization: string; quantile: number; } | The settings that refetch. The binsize is zoom-derived, so it travels as its own argument. |
hitTest(mouseX: number, mouseY: number) => HicContactItem | undefined | The contact under a display-px point, through the inverse of the transform the matrix was drawn with. |
() => MenuItem[] | |
renderSvg(opts: ExportSvgDisplayOptions) => Promise<ReactNode> |
11 inherited methods from 4 models
From BaseDisplay: renderingProps, liftPlot, plotProblems, plotWrites
From RegionTooLargeMixin: resolvedByteLimit, gateFetchState
From LegendMixin: svgLegendWidth, colorScalesIn, legendSpecIn
Actions
| Member | Description |
|---|---|
startRenderingBackend(backend: HicRenderingBackend) => void | |
setLogScale(log: boolean) => void | The Log scale toggle: color.scale log, or unset for count's linear preset. |
setColorFollowsPercentile(f: boolean) => void | |
setShowResolutionControls(f: boolean) => void | |
| setColorScheme | The scheme, with reverse back to unset so it follows the scheme. |
setActiveNormalization(f: string) => void | |
setFileInfo(read: AdapterRead<HicFileInfo>) => void | |
resetResolutionBias() => void | |
setResolutionIdx(idx: number) => void | Lock to availableResolutions[idx], clamped, stored as an offset from the auto pick so the choice keeps its meaning across zoom. |
setResolution(binSize: number) => void | Lock to a binsize the file offers; any other is ignored. |
stepResolution(delta: number) => void |
36 inherited actions from 8 models
From BaseDisplay: setStatusMessage, setError, clearHoveredFeature, reload, applyDisplaySettings, applyPlot
From TrackHeightMixin: setScrollTop, setHostHeight, setHeight, resizeHeight, expandToContentHeight
From RegionTooLargeMixin: clearByteEstimate, clearGateMeasurements, setForceLoadTrack, commitFetchBytes, forceLoad
From RenderLifecycleMixin: markCanvasDrawn, resetCanvasDrawn, stopRenderingBackend, renderNow, setOffScreen, setRenderError, attachRenderingBackend
From KeyedFetchMixin: commitFetchResult
From FetchMixin: stopActiveFetch, openStatusStream, cancelFetch, cancelFetchByUser, beforeDestroy, beginFetch, endFetch, runFetch