This program generates a series of parabolic lines between blocks on the periphery of a circular ring.
Updated 1 Feb 2020

View License

Editor's Note: This file was selected as MATLAB Central Pick of the Week

This program generates a series of parabolic lines between blocks on the periphery of a circular ring. Each block representing a unique digit (0-9) and with its own colour. The method takes each digit in turn from an irrational or transcendental number, and draws a line from its corresponding block on the periphery to the corresponding block of the next digit in the number sequence. The line takes the same colour as the 'from' block and has its transparency set by an associated alpha value. The next line starts at the end point of the previous line and ends at the next digit in the sequence. The vertices of the parabolas are located on concentric rings with the radii determined by the difference between adjacent digits.

The number sequences omit the decimal point, e.g. for pi we use the sequence 314159 ... rather that 3.14159 ... . Also, for the 'Feigenbaum alpha constant', we use the positive version. It will be noticed that the number of connections to each block differs. This is because the instances of each particular digit, 1,2,3...,0, vary over the length of the sequence. Irrational and transcendental numbers used here are considered to be 'normal', i.e. as the length of the sequence increases, the 'average of all the digits' tends asymptotically to 4.5. In other words, the count differences, as a percentage, tend to zero. However, for some numbers, normality has not yet been proved.

On a standard PC, the program calculations complete in around 12 seconds for a number sequence length of 10,000. Writing the output file takes an additional 12 seconds, making around 24 second in all.

The project was Inspired by 'Circos' plots generated by Cristian Vasile and Martin Krzywinski, see: https://fineartamerica.com/profiles/cristian-vasile

Cite As

Graham W Griffiths (2024). digCircs (https://www.mathworks.com/matlabcentral/fileexchange/73167-digcircs), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2019b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on Fluid Dynamics in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

missing circle2.m file added


New image


number sequence files uploaded


Minor typos corrected in descriptions.


example plot file added


minor update


minor typo corrected