9ab8b9c0cd6f2ff74c3187abce52e39a1309e51a jcasper Wed Aug 13 15:13:12 2025 -0700 MaveDB trackdoc now in it's own file, with minor processing fixes, refs #31812 diff --git src/hg/oneShot/parseMave/parseMave.pl src/hg/oneShot/parseMave/parseMave.pl index 5d7b92ee676..9a0f288994f 100644 --- src/hg/oneShot/parseMave/parseMave.pl +++ src/hg/oneShot/parseMave/parseMave.pl @@ -493,30 +493,32 @@ } $outstring .= "$sizeString\t$exonStarts"; # that's the end of the basic bed fields. Now for the extra heatmap-specific fields $outstring .= "\t$rowCount\t$rowLabels\t"; # now write out the lower bound, midpoint, and upper bound for the track # These should be in ascending order @justScores = grep (/^[^#]/, @exonScores); # if all positive or negative, the #color values and "" would screw this up $outstring .= join ",", (min(@justScores), (min(@justScores)+max(@justScores))/2, max(@justScores)); $outstring .= ",\t"; +die "Min and max score are both " . min(@justScores) . ". Likely a parsing error." if (min(@justScores) == max(@justScores)); + # now the colors for each block $outstring .= join ",", ("blue", "silver", "red"); $outstring .= ",\t"; # now for the cell scores themselves, along with the cell labels $outstring .= join ",", @exonScores; $outstring .= ",\t"; $outstring .= join ",", @exonLabels; $outstring .= ",\t"; $metadata_ref = $$jsonObj{"metadata"}; $shortDescription = $$metadata_ref{"shortDescription"}; $shortDescription =~ s/\\u(.{4})/chr(hex($1))/ge; # thanks to https://www.perlmonks.org/?node_id=796799