e8f2f6e391ee65e96e0a99e9a840f55db59bdb60
angie
  Fri Jun 5 15:34:13 2026 -0700
Fixing more bugs found by Claude when Chris ran it.

diff --git src/hg/js/hgPhyloPlace.js src/hg/js/hgPhyloPlace.js
index 7493fde37b4..7fcae69cb3f 100644
--- src/hg/js/hgPhyloPlace.js
+++ src/hg/js/hgPhyloPlace.js
@@ -442,31 +442,31 @@
         return out;
     }
 
     function estimateTextWidth(text) {
         // SVG text won't reveal its size until it's rendered.  Return a guess based on an assumption of font size
         // relative to baseWidth, and font width relative to font height.
         return text.length * cfg.baseWidth * 0.5;
     }
 
     function addGenomeScale(svg, x, y, width, genomeSize, genomeScale) {
         // Add tick marks and centered text labels underneath the genome graph
         const genomeSizeString = commafy(genomeSize);
         const maxLabelWidth = estimateTextWidth(genomeSizeString);
         const maxBins = Math.floor(width / (maxLabelWidth * 1.5));
         const tickTextY = y + 3 * cfg.topPad;
-        for (let binSize of [100, 200, 500, 1000, 200, 5000, 10000, 20000, 50000, 100000, 200000, 500000, 1000000]) {
+        for (let binSize of [100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000, 100000, 200000, 500000, 1000000]) {
             let binCount = Math.ceil(genomeSize / binSize);
             if (binCount < maxBins) {
                 for (let gx = 0;  gx < genomeSize;  gx += binSize) {
                     const xOff = gx * genomeScale;
                     const tickX = x + xOff;
                     addTick(svg, tickX, y, cfg.tickHeight);
                     // Don't write label if it might overlap with the label at the end of the genome
                     if (width - xOff > maxLabelWidth) {
                         addText(svg, commafy(gx), tickX, tickTextY, { fill: 'black', 'text-anchor': 'middle' });
                     }
                 }
                 break;
             }
         }
         // Add one more for the end of the genome