Select one circular chromosome.
For each RefSeq complete-genome assembly, the local builder downloads the genome FASTA and GenBank annotation from NCBI Datasets. It reads the GenBank LOCUS topology field, keeps records marked circular, removes records described as plasmids, and chooses the primary chromosome. If there is more than one eligible record, a chromosome-labelled record is preferred; otherwise the longest is used.
Walk along the sequence.
Starting with a skew of zero at the first base, each nucleotide updates the running total. Guanine moves the line up by one; cytosine moves it down by one; adenine, thymine, and ambiguous bases do not change it.
Si − 1 if basei = C
Si otherwise
Record the landmarks.
While walking, oriC retains the position and value of the global maximum and global minimum. It also keeps evenly spaced points from the path—up to about 2,800 points per chromosome—for a fast, faithful browser chart. The complete per-base sequence is never shipped with the website.
What do the roughly 2,801 chart points represent?
The curve is calculated from every nucleotide; it is not calculated from a sampled sequence. For a chromosome with L bases, oriC walks through all L bases and saves the running skew at intervals of ceil(L / 2,800) bases, together with the starting point. That produces about 2,801 points for the browser to draw.
For a 4.6-million-base E. coli-sized chromosome, one plotted point represents roughly 1.6 kb of the walk. The exact global minimum and maximum are still found from every single base and stored with their exact nucleotide positions. What is omitted are the small within-interval wiggles between neighbouring plotted points, not the underlying calculation or the overall composition signal.
skew = 0
for position, base in enumerate(chromosome, start=1):
if base == "G": skew += 1
if base == "C": skew -= 1
update_min_and_max(skew, position)
save_point_every_n_bases(skew, position)
Read the curve carefully.
In many bacteria, strand-specific mutation and selection pressures create a change in slope around replication landmarks. A pronounced minimum in a cumulative GC-skew curve can therefore be a useful oriC candidate, while a maximum can point toward the opposing terminus region.