Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca - contact me Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca on Twitter Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca - Lumondo Photography Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca - Pi Art Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca - Hilbertonians - Creatures on the Hilbert CurveMartin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca - Pi Day 2020 - Piku
Sun is on my face ...a beautiful day without you.Royskoppbe apartmore quotes

numbers: curious


Martin Krzywinski / Canada's Michael Smith Genome Sciences Centre / mkweb.bcgsc.ca
2020 `\pi` day art and the piku


visualization + design

“Transcendental Tree Map” from Yearning for the Infinite. This video premiered on 2020 Pi Day. Music by Max Cooper. Animation by Nick Cobby and myself.
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The 2020 Pi Day art celebrates digits of `\pi` with piku (パイク) —poetry inspired by haiku.
They serve as the form for The Outbreak Poems.
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
A `\pi` day music video!: Transcendental Tree Map premieres on 2020 Pi Day from Max Cooper's Yearning for the Infinite. Animation by Nick Cobby and myself. Watch live from Barbican Centre.

`\pi` Day 2015 Art Posters


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2019 `\pi` has hundreds of digits, hundreds of languages and a special kids' edition.

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2018 `\pi` day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2017 `\pi` day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2016 `\pi` approximation day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2016 `\pi` day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2015 `\pi` day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2014 `\pi` approx day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2014 `\pi` day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
2013 `\pi` day

Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Circular `\pi` art

On March 14th celebrate `\pi` Day. Hug `\pi`—find a way to do it.

For those who favour `\tau=2\pi` will have to postpone celebrations until July 26th. That's what you get for thinking that `\pi` is wrong. I sympathize with this position and have `\tau` day art too!

If you're not into details, you may opt to party on July 22nd, which is `\pi` approximation day (`\pi` ≈ 22/7). It's 20% more accurate that the official `\pi` day!

Finally, if you believe that `\pi = 3`, you should read why `\pi` is not equal to 3.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
All art posters are available for purchase.
I take custom requests.

Not a circle in sight in the 2015 `\pi` day art. Try to figure out how up to 612,330 digits are encoded before reading about the method. `\pi`'s transcendental friends `\phi` and `e` are there too—golden and natural. Get it?

This year's `\pi` day is particularly special. The digits of time specify a precise time if the date is encoded in North American day-month-year convention: 3-14-15 9:26:53.

The art has been featured in Ana Swanson's Wonkblog article at the Washington Post—10 Stunning Images Show The Beauty Hidden in `\pi`.

We begin with a square and progressively divide it. At each stage, the digit in `pi` is used to determine how many lines are used in the division. The thickness of the lines used for the divisions can be attenuated for higher levels to give the treemap some texture.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Representing a number using a tree map. Each digit of the number is used to successively divide a shape, such as a square. (zoom)

This method of encoding data is known as treemapping. Typically, it is used to encode hierarchical information, such as hard disk spac usage, where the divisions correspond to the total size of files within directories.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
At each level of the tree map, more digits are encoded. Shown here are tree maps for `pi` for the first 6 levels of division. (zoom)

This kind of treemap can be made from any number. Below I show 6 level maps for `pi`, `phi` (Golden ratio) and `e` (base of natural logarithm).


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
At each level of the tree map, more digits are encoded. Shown here are tree maps for `pi` for the first 6 levels of division. (zoom)

The number of digits per level, `n_i` and total digits, `N_i` in the tree map for `pi`, `phi` and `e` is shown below for levels `i = 1 .. 6`.

           PI             PHI              e
i     n_i    N_i      n_i    N_i      n_i    N_i
1       1      1        1      1        1      1
2       4      5        2      3        3      4
3      15     20        9     12       19     23
4      98    118       59     71       96    119
5     548    666      330    401      574    693
6    2962   3628     1857   2258     3162   3855
7   16616  20244    10041  12299    17541  21396
8   91225 111469
9  500861 612330

Dividing the map

In all the treemaps above, the divisions were made uniformly for each rectangle. With uniform division, the lines that divide a shape are evenly spaced. With randomized division, the placement of lines is randomized, while still ensuring that lines do not coincide.

A multiplier, such as `phi` (Golden Ratio), can be used to control the division. In this case, the first division is made at 1/`phi` (0.62/0.38 split) and the remaining rectangle (0.38) is further divided at `/`phi` (0.24/0.14 split).


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The divisions of each shape can be influenced by another number and the level at which the division is performed. (zoom)

Using a non-uniform multipler is one way to embed another number in the art.

When a multiplier like `phi` is used, divisions at the top levels create very large rectangles. To attenuate this, the effect of the multiplier can be weighted by the level. Regardless of what multiplier is used, the first level is always uniformly divided. Division at subsequent levels incorporates more of the multiplier effect.

The orientation of the division can be uniform (same for a layer and alternating across layers), alternating (alternating across and within a layer) or random. This modification has an effect only if the divisions are not uniform.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The divisions of each shape can be influenced by another number and the level at which the division is performed. (zoom)

Adjusting line thickness

To emphasize the layers, a different line thickness can be used. When lines are drawn progressively thinner with each layer, detail is controlled and the map has more texture.

When all lines have the same thickness, it is harder to distinguish levels.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The divisions of each shape can be influenced by another number and the level at which the division is performed. (zoom)

You could see this as a challenge! Below I show the treemaps for `pi`, `phi` and `e` with and without stroke modulation.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The divisions of each shape can be influenced by another number and the level at which the division is performed. (zoom)

When displayed at a low resolution (the image below is 620 pixels across), shapes at higher levels appear darker because the distance between the lines within is close to (or smaller) than a pixel. By matching the line thickness to the image resolution, you can control how dark the smallest divisions appear.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The divisions of each shape can be influenced by another number and the level at which the division is performed. (zoom)

Adding color

Adding color can make things better, or worse. Dropping color randomly, without respect for the level structure of the treemap, creates a mess.

We can rescue things by increasing the probability that a given rectangle will be made transparent—this will allow the color of the rectangle below to show through. Additionally, by drawing the layers in increasing order, smaller rectangles are drawn on top of bigger ones, giving a sense of recursive subdivision.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The divisions of each shape can be influenced by another number and the level at which the division is performed. (zoom)

Because the color is assigned randomly, various instances of the treemap can be made. The maps below have the same proportion of colors and transparency (same as the first image in second row in the figure above) and vary only by the random seed to pick colors.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Different instances of 5 level `pi` treemaps. The proportion of transparent, white, yellow, red and blue shapes is 20:1:1:1:1. (zoom)

Coloring using adjacency graph

The color assignments above were random. For each shape the probability of choosing a given color (transparent, white, yellow, red, blue) was the same.

Color choice for a shape can also be influenced by the color of neighbouring shapes. To do this, we need to create a graph that captures the adjacency relationship between all the shapes at each level. Below I show the first 4 levels of the `pi` treemap and their adjacency graphs. In each graph, the node corresponds to a shape and an edge between nodes indicates that the shapes share a part of their edge. Shapes that touch only at a corner are not considered adjacent.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Different instances of 5 level `pi` treemaps. The proportion of transparent, white, yellow, red and blue shapes is 20:1:1:1:1. (zoom)

One way in which the graphs can be used is to attempt to color each layer using at most 4 colors. The 4 color theorem tells us that only 4 unique colors are required to color maps such as these in a way that no two neighbouring shapes have the same color.

It turns out that the full algorithm of coloring a map with only 4 colors is complicated, but reasonably simple options exist.. For the maps here, I used the DSATUR (maximum degree of saturation) approach.


Pi Day 2015 Art Posters
 / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Different instances of 5 level `pi` treemaps. The proportion of transparent, white, yellow, red and blue shapes is 20:1:1:1:1. (zoom)

The DSATUR algorithm works well, but does not guarantee a 4-color solution. It performs no backtracking. If you look carefully, one of the rectangles in the 4th layer (top right quadrant in the graph) required a 5th color (shown black).

VIEW ALL

news + thoughts

The Outbreak Poems

Sat 04-04-2020

I'm writing poetry daily to put my feelings into words more often during the COVID-19 outbreak.

Door closes
next
next door closes
next
nothing is left open.
One of the
pair
is from the other.
Eyes look at
eyes
and see themselves.
Look back and
pass
destinations.

Read the poems and learn what a piku is.

Deadly Genomes: Genome Structure and Size of Harmful Bacteria and Viruses

Tue 17-03-2020

A poster full of epidemiological worry and statistics. Now updated with the genome of SARS-CoV-2 and COVID-19 case statistics as of 3 March 2020.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Deadly Genomes: Genome Structure and Size of Harmful Bacteria and Viruses (zoom)

Bacterial and viral genomes of various diseases are drawn as paths with color encoding local GC content and curvature encoding local repeat content. Position of the genome encodes prevalence and mortality rate.

The deadly genomes collection has been updated with a posters of the genomes of SARS-CoV-2, the novel coronavirus that causes COVID-19.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Genomes of 56 SARS-CoV-2 coronaviruses that causes COVID-19.
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Ball of 56 SARS-CoV-2 coronaviruses that causes COVID-19.
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The first SARS-CoV-2 genome (MT019529) to be sequenced appears first on the poster.

Using Circos in Galaxy Australia Workshop

Wed 04-03-2020

A workshop in using the Circos Galaxy wrapper by Hiltemann and Rasche. Event organized by Australian Biocommons.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Using Circos in Galaxy Australia workshop. (zoom)

Download workshop slides.

Galaxy wrapper training materials, Saskia Hiltemann, Helena Rasche, 2020 Visualisation with Circos (Galaxy Training Materials).

Essence of Data Visualization in Bioinformatics Webinar

Thu 20-02-2020

My webinar on fundamental concepts in data visualization and visual communication of scientific data and concepts. Event organized by Australian Biocommons.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Essence of Data Visualization in Bioinformatics webinar. (zoom)

Download webinar slides.

Markov models — training and evaluation of hidden Markov models

Thu 20-02-2020

With one eye you are looking at the outside world, while with the other you are looking within yourself.
—Amedeo Modigliani

Following up with our Markov Chain column and Hidden Markov model column, this month we look at how Markov models are trained using the example of biased coin.

We introduce the concepts of forward and backward probabilities and explicitly show how they are calculated in the training process using the Baum-Welch algorithm. We also discuss the value of ensemble models and the use of pseudocounts for cases where rare observations are expected but not necessarily seen.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Nature Methods Points of Significance column: Markov models — training and evaluation of hidden Markov models. (read)

Grewal, J., Krzywinski, M. & Altman, N. (2019) Points of significance: Markov models — training and evaluation of hidden Markov models. Nature Methods 17:121–122.

Background reading

Altman, N. & Krzywinski, M. (2019) Points of significance: Hidden Markov models. Nature Methods 16:795–796.

Altman, N. & Krzywinski, M. (2019) Points of significance: Markov Chains. Nature Methods 16:663–664.

Genome Sciences Center 20th Anniversary Clothing, Music, Drinks and Art

Tue 28-01-2020

Science. Timeliness. Respect.

Read about the design of the clothing, music, drinks and art for the Genome Sciences Center 20th Anniversary Celebration, held on 15 November 2019.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Luke and Mayia wearing limited edition volunteer t-shirts. The pattern reproduces the human genome with chromosomes as spirals. (zoom)

As part of the celebration and with the help of our engineering team, we framed 48 flow cells from the lab.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Precisely engineered frame mounts of flow cells used to sequence genomes in our laboratory. (zoom)

Each flow cell was accompanied by an interpretive plaque explaining the technology behind the flow cell and the sample information and sequence content.

Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The plaque at the back of one of the framed Illumina flow cell. This one has sequence from a patient's lymph node diagnosed with Burkitt's lymphoma. (zoom)