Feature type and shape vocabulary
Every feature record has a type (see Load your own data). The viewer uses it to pick the feature’s default colour and shape from a table built into Nightingale, the library that draws the tracks. This page lists that table as shipped in @nightingale-elements/nightingale-track 5.11.1, the version the viewer draws with. It is generated from that package and kept in sync by drift tests, so it cannot silently diverge.
How a feature gets its colour and shape
Section titled “How a feature gets its colour and shape”The first of these that applies wins:
- A colour or shape carried on the feature record itself. Some built-in kinds set one (InterPro domains get a colour per entry; PTMeXchange peptides are triangles); records from your own CSV, TSV or JSON file can set one with a
color/shapecolumn (or key); BED files cannot. - The track’s
rendering.colorandrendering.shape, set on the track or inherited from its group or fromdefaults:. These apply to every feature in the track, whatever its type. - The default for the feature’s
type, from the table below. blackandrectangle.
Colour and shape are resolved separately, so a track can set one and keep the other.
type is matched without regard to case, against either the type code (ACT_SITE) or the UniProt name (active site) listed in the table.
Types ProtVista does not recognise
Section titled “Types ProtVista does not recognise”A type outside the table is drawn as a black rectangle. The viewer shows no error or warning; Nightingale only logs the type name to the browser console. Every unrecognised type looks the same, so a track that mixes two of them cannot tell them apart.
BED files have no type column, so every record read from a .bed file has type: BED and is drawn as a black rectangle unless its track sets rendering.
Worked example: a custom type
Section titled “Worked example: a custom type”A lab marks its own hotspots with a type UniProt does not use:
type,start,end,description,scoreHOTSPOT,132,140,Lab-defined mutational hotspot,0.87HOTSPOT,601,612,Lab-defined mutational hotspot,0.64On its own, each row draws as a black rectangle. Give the track a rendering block to choose the look instead:
accession: P05067rows: - id: hotspots label: Hotspots kind: features data: ./hotspots.csv rendering: color: '#e67e22' shape: roundRectangleBecause rendering applies to the whole track, it also overrides the defaults of any recognised types in the same file. Keep custom types in their own file and track so the recognised ones keep their colours.
Recognised types
Section titled “Recognised types”45 type codes, in the order Nightingale’s type table lists them.
| Type | UniProt name | Label | Default shape | Default colour | Meaning |
|---|---|---|---|---|---|
CHAIN |
chain | Chain | rectangle |
#CC9933 |
(aka mature region). This describes the extent of a polypeptide chain in the mature protein following processing |
TRANSIT |
transit peptide | Transit peptide | rectangle |
#009966 |
This describes the extent of a transit peptide |
INIT_MET |
initiator methionine | Initiator methionine | arrow |
#996633 |
This indicates that the initiator methionine is cleaved from the mature protein |
PROPEP |
propeptide | Propeptide | rectangle |
#99CCCC |
Part of a protein that is cleaved during maturation or activation |
PEPTIDE |
peptide | Peptide | rectangle |
#006699 |
The position and length of an active peptide in the mature protein |
SIGNAL |
signal peptide | Signal peptide | rectangle |
#CC0033 |
N-terminal signal peptide |
HELIX |
helix | Helix | rectangle |
#FF0066 |
The positions of experimentally determined helical regions |
STRAND |
strand | Beta strand | rectangle |
#FFCC00 |
The positions of experimentally determined beta strands |
TURN |
turn | Turn | rectangle |
#0571AF |
The positions of experimentally determined hydrogen-bonded turns |
DISULFID |
disulfide bond | Disulfide bond | bridge |
#23B14D |
The positions of cysteine residues participating in disulphide bonds |
CROSSLNK |
cross-link | Cross-link | bridge |
#FF6600 |
Covalent linkages of various types formed between two proteins or between two parts of the same protein |
REGION |
region of interest | Region of interest | rectangle |
#B33E00 |
Regions in multifunctional enzymes or fusion proteins, or characteristics of a region, e.g., protein-protein interactions mediation |
COILED |
coiled-coil region | Coiled-coil region | rectangle |
#006699 |
Coiled coils are built by two or more alpha-helices that wind around each other to form a supercoil |
MOTIF |
short sequence motif | Short sequence motif | rectangle |
#402060 |
Short conserved sequence motif of biological significance |
REPEAT |
repeat | Repeat | rectangle |
#9900FF |
Repeated sequence motifs or repeated domains within the protein |
CA_BIND |
calcium-binding region | Calcium-binding region | rectangle |
#FF3399 |
Calcium-binding regions, such as the EF-hand motif |
DNA_BIND |
DNA-binding region | DNA binding | rectangle |
#009933 |
DNA-binding domains such as AP2/ERF domain, the ETS domain, the Fork-Head domain, the HMG box and the Myb domain |
DOMAIN |
other domain of interest | Other domain of interest | rectangle |
#9999FF |
Specific combination of secondary structures organized into a characteristic three-dimensional structure or fold |
ZN_FING |
zinc finger region | Zinc finger | rectangle |
#990066 |
Small, functional, independently folded domain that coordinates one or more zinc ions |
NP_BIND |
nucleotide-binding region | Nucleotide-binding region | rectangle |
#FF9900 |
(aka flavin-binding). Region in the protein which binds nucleotide phosphates |
METAL |
metal ion-binding site | Metal ion-binding site | diamond |
#009900 |
Binding site for a metal ion |
SITE |
other site of interest | Other site of interest | chevron |
#660033 |
Any interesting single amino acid site on the sequence |
BINDING |
other binding site | Other binding site | rectangle |
#009999 |
Binding site for any chemical group (co-enzyme, prosthetic group, etc.) |
ACT_SITE |
active site | Active site | circle |
#FF6666 |
Amino acid(s) directly involved in the activity of an enzyme |
MOD_RES |
Post-translationally modified residue | Modified residue | triangle |
#000066 |
Modified residues such as phosphorylation, acetylation, acylation, methylation |
LIPID |
lipid moiety-binding region | Lipidation | wave |
#99CC33 |
Covalently attached lipid group(s) |
CARBOHYD |
glycosylation site | Glycosylation | hexagon |
#CC3366 |
Covalently attached glycan group(s) |
COMPBIAS |
compositionally biased region | Compositionally biased region | rectangle |
#FF3366 |
Position of regions of compositional bias within the protein and the particular amino acids that are over-represented within those regions |
CONFLICT |
sequence conflict | Sequence conflict | rectangle |
#6633CC |
Sequence discrepancies of unknown origin |
NON_CONS |
non-consecutive residues | Non-adjacent residues | doubleBar |
#FF0033 |
Indicates that two residues in a sequence are not consecutive and that there is an undetermined number of unsequenced residues between them |
NON_TER |
non-terminal residue | Non-terminal residue | doubleBar |
#339933 |
The sequence is incomplete. The residue is not the terminal residue of the complete protein |
UNSURE |
unsure residue | Sequence uncertainty | rectangle |
#33FF00 |
Regions of a sequence for which the authors are unsure about the sequence assignment |
NON_STD |
non-standard amino acid | Non-standard residue | pentagon |
#330066 |
Non-standard amino acids (selenocysteine and pyrrolysine) |
MUTAGEN |
mutagenesis site | Mutagenesis | rectangle |
#FF9900 |
Site which has been experimentally altered by mutagenesis |
TOPO_DOM |
topological domain | Topological domain | rectangle |
#CC0000 |
Location of non-membrane regions of membrane-spanning proteins |
TRANSMEM |
transmembrane region | Transmembrane | rectangle |
#CC00CC |
Extent of a membrane-spanning region |
INTRAMEM |
intramembrane region | Intramembrane | rectangle |
#0000CC |
Extent of a region located in a membrane without crossing it |
VAR_SEQ |
splice variant | Splice variant | rectangle |
#CC11CC |
— |
VARIANT |
sequence variant | Natural variant | circle |
black |
Natural variant of the protein, including polymorphisms, variations between strains, isolates or cultivars, disease-associated mutations and RNA editing events |
UNIQUE |
unique | Unique peptide | rectangle |
#fc3133 |
— |
NON_UNIQUE |
non-unique | Non-unique peptide | rectangle |
#8585fc |
— |
RESIDUE |
residue | PTM residue | rectangle |
#06038D |
— |
EPITOPE |
epitope | Epitopes | rectangle |
#4ade33 |
— |
ANTIGEN |
antigen | Antibody binding sequences | rectangle |
#996699 |
— |
PDBE_COVER |
pdbe coverage | PDBe 3D structure coverage | rectangle |
#669966 |
— |
Shapes
Section titled “Shapes”rendering.shape takes one of these 22 names. The spellings (discontinuos) are Nightingale’s. Each is drawn below by the canvas track’s own drawing code: shapes that stretch across several residues, glyphs on one. 3 of them (leftEndedTag, rightEndedTag, doubleEndedTag) are declared but not drawn by the canvas track, and show a question mark instead. So does any other name: the config accepts any string for shape, and a misspelt one only shows up as a one-time warning naming it in the browser console.
| Looks like | Shape | Drawn as | Default for |
|---|---|---|---|
rectangle |
Stretches to cover the feature | CHAIN, TRANSIT, PROPEP, PEPTIDE, SIGNAL, HELIX, STRAND, TURN, REGION, COILED, MOTIF, REPEAT, CA_BIND, DNA_BIND, DOMAIN, ZN_FING, NP_BIND, BINDING, COMPBIAS, CONFLICT, UNSURE, MUTAGEN, TOPO_DOM, TRANSMEM, INTRAMEM, VAR_SEQ, UNIQUE, NON_UNIQUE, RESIDUE, EPITOPE, ANTIGEN, PDBE_COVER |
|
roundRectangle |
Stretches to cover the feature | — | |
bridge |
Stretches to cover the feature | DISULFID, CROSSLNK |
|
line |
Stretches to cover the feature | — | |
diamond |
Fixed-size glyph; across more than one residue a line joins its ends | METAL |
|
chevron |
Fixed-size glyph; across more than one residue a line joins its ends | SITE |
|
catFace |
Fixed-size glyph; across more than one residue a line joins its ends | — | |
triangle |
Fixed-size glyph; across more than one residue a line joins its ends | MOD_RES |
|
wave |
Fixed-size glyph; across more than one residue a line joins its ends | LIPID |
|
hexagon |
Fixed-size glyph; across more than one residue a line joins its ends | CARBOHYD |
|
pentagon |
Fixed-size glyph; across more than one residue a line joins its ends | NON_STD |
|
circle |
Fixed-size glyph; across more than one residue a line joins its ends | ACT_SITE, VARIANT |
|
arrow |
Fixed-size glyph; across more than one residue a line joins its ends | INIT_MET |
|
doubleBar |
Fixed-size glyph; across more than one residue a line joins its ends | NON_CONS, NON_TER |
|
discontinuosStart |
Stretches to cover the feature | — | |
discontinuos |
Stretches to cover the feature | — | |
discontinuosEnd |
Stretches to cover the feature | — | |
helix |
Stretches to cover the feature | — | |
strand |
Stretches to cover the feature | — | |
leftEndedTag |
Not drawn — shows a question mark | — | |
rightEndedTag |
Not drawn — shows a question mark | — | |
doubleEndedTag |
Not drawn — shows a question mark | — |
This work was supported by the Research Software Maintenance Fund, managed by the Software Sustainability Institute and funded by UKRI grant reference AH/Z000114/1.