9f9a96ab068a76799311c09a2813b0b28f8e7712 lrnassar Mon Jul 13 12:52:41 2026 -0700 Order EVE heatmap amino acid rows by class to match the MaveDB track. refs #37763 Change the heatmap row order from alphabetical to physicochemical-amino-acid-class order (A V L I M F Y W R H K D E S T N Q G C P), matching the MaveDB Experiments heatmap so the tracks can be compared row-for-row. Rebuilds eve.bb; updates the makedoc, the AutoSql row label comment, and the description page. diff --git src/hg/makeDb/scripts/eve/vcfToEveHeatmap.py src/hg/makeDb/scripts/eve/vcfToEveHeatmap.py index a1422a78ef3..ced9835d73d 100644 --- src/hg/makeDb/scripts/eve/vcfToEveHeatmap.py +++ src/hg/makeDb/scripts/eve/vcfToEveHeatmap.py @@ -4,31 +4,31 @@ Usage: vcfToEveHeatmap.py Each *_HUMAN.vcf in vcf_dir produces one heatmap BED12+ row. Columns = protein positions sorted by ascending genomic coordinate. Rows = 20 standard amino acids (A C D E F G H I K L M N P Q R S T V W Y). Wildtype cell at each column is left empty. Colors = blue (EVE=0, benign) -> white (EVE=0.5, uncertain) -> red (EVE=1, pathogenic). Mouseover includes wildtype, variant, EVE score, and Class25 classification. """ import sys import os import re import glob -STANDARD_AAS = list('ACDEFGHIKLMNPQRSTVWY') # 20 standard AAs, alphabetical +STANDARD_AAS = list('AVLIMFYWRHKDESTNQGCP') # 20 standard AAs, by class, to match MaveDB COLOR_BOUNDS = "0,0.5,1" COLOR_VALUES = "#2166ac,#f7f7f7,#d6604d" LEGEND = "EVE score: 0=benign (blue) 0.5=uncertain (white) 1=pathogenic (red)" RE_PROT_MUT = re.compile(r'^([A-Z0-9]+)_([A-Z])(\d+)([A-Z])$') def add_chr_prefix(chrom): """Convert bare chromosome names to UCSC style (1 -> chr1, MT -> chrM).""" if chrom.startswith('chr'): return chrom if chrom == 'MT': return 'chrM' return 'chr' + chrom