a3fd570e96fb63b45d583ebcce83d8d23673a30a max Wed Sep 16 07:00:11 2026 -0700 hg38 pcLAI: squish, not dense - dense removes the details page Same problem the GenArk contrib collection had: in tvDense hgTracks draws one merged row per subtrack and emits no per-item map boxes, so there is no hgc link and no mouseOver, and the ancestry scatterplot built for the details page is unreachable. On chr18:10,800,000-12,500,000 the image map has 0 hgc links in dense and 134 in squish. The composite is now visibility squish plus onlyVisibility squish. On a composite that governs the only vis dropdown the track has, since the subtracks get checkboxes rather than dropdowns, and hgTrackUi now offers Hide and Squish. Squish suits the data: the windows tile without overlapping and carry no item labels, so each haplotype stays one row at a 20 Mb view, refs #35415 diff --git src/hg/makeDb/scripts/hprcPclai/hprcPclaiMakeTrackDb.py src/hg/makeDb/scripts/hprcPclai/hprcPclaiMakeTrackDb.py index 15c2f8dde0f..cdff2037ef4 100755 --- src/hg/makeDb/scripts/hprcPclai/hprcPclaiMakeTrackDb.py +++ src/hg/makeDb/scripts/hprcPclai/hprcPclaiMakeTrackDb.py @@ -68,31 +68,37 @@ hapVals = sorted({h for _s, h in haps}) out = open(outFname, "w", encoding="utf-8") w = out.write w("# hg38 pcLAI local ancestry, one subtrack per HPRC Release 2 haplotype.\n") w("# Generated by hg/makeDb/scripts/hprcPclai/hprcPclaiMakeTrackDb.py -- do not\n") w("# hand-edit; see hg/makeDb/doc/hg38/hprcPclai.txt.\n\n") w("track %s\n" % TRACK) w("compositeTrack on\n") w("shortLabel pcLAI Ancestry\n") w("longLabel Point cloud local ancestry inference (pcLAI) along HPRC assembly haplotypes\n") w("group hprc\n") w("type bigBed 9 +\n") w("itemRgb on\n") - w("visibility dense\n") + # squish, not dense, and pinned there. In tvDense hgTracks draws one merged row + # per subtrack and emits no per-item map boxes at all, so the scatterplot on the + # details page and the mouseOver below both become unreachable. squish keeps + # every map box, and since the windows tile without overlapping each haplotype + # still collapses to one or two thin rows instead of pack's ~50. + w("visibility squish\n") + w("onlyVisibility squish\n") w("priority 30\n") # A whole chromosome holds a few thousand windows per haplotype, well over the # 1000-item default at which pack mode gives up drawing; the block structure # this track exists to show is only visible at that zoom. w("maxItems 40000\n") w("subGroup1 sample Sample %s\n" % " ".join("%s=%s" % (s, s) for s in samples)) w("subGroup2 hap Haplotype %s\n" % " ".join("h%s=%s" % (h, h) for h in hapVals)) w("sortOrder sample=+ hap=+\n") w("dimensions dimensionY=sample dimensionX=hap\n") w("dragAndDrop subTracks\n") w("dataVersion %s\n" % DATA_VERSION) w("\n") # Explicit priorities: without them the subtracks come out in an arbitrary # (in practice reversed) order in the image, and with several hundred rows a