Martin Krzywinski / Genome Sciences Center / Martin Krzywinski / Genome Sciences Center / - contact me Martin Krzywinski / Genome Sciences Center / on Twitter Martin Krzywinski / Genome Sciences Center / - Lumondo Photography Martin Krzywinski / Genome Sciences Center / - Pi Art Martin Krzywinski / Genome Sciences Center / - Hilbertonians - Creatures on the Hilbert Curve
Trance opera—Spente le Stellebe dramaticmore quotes

b: 2

In Silico Flurries: Computing a world of snow. Scientific American. 23 December 2017

data visualization + art

If you like space, you'll love my 2017 Pi Day art which imagines the digits as a star catalogue. Meet the Quagga and Aurochs—the Constellations in this sky are extinct animals and plants.

from an undefined
create (a place)
an account
of us
— Viorica Hrincu

Sometimes when you stare at the void, the void sends you a poem.

Universe—Superclusters and Voids

Universe - Superclusters and Voids / Martin Krzywinski @MKrzywinski
The Universe — Superclustesr and Voids. The two supergalactic hemispheres showing Abell clusters (blue), superclusters (magenta) and voids (black) within a distance of 6,000 million light-years from the Milky Way.

The average density of the universe is about `10 \times 10^{-30} \text{ g/cm}^3` or about 6 protons per cubic meter. This should put some perspective in what we mean when we speak about voids as "underdense regions".

expressing distances in the universe

All distances on the poster are expressed in terms of the light travel distance.

light-travel and comoving distance

Distances in the universe can be expressed as either the light-travel distance or the comoving distance to the object. The first tells us how long light took to travel from the object to us.

For example, the furthest object observed is the galaxy GN-Z11 and its light-travel distance is 13 billion light-years (Gly).

But because space has expanded during the time the light from GN-Z11 has been travelling to us, the galaxy is now actually much further away. This is measured by its comoving distance which accounts for space expansion, which is 29.3 Gly for GN-Z11.

The redshift, `z`, is commonly used to specify distance, since it's a quantity that can be observed. For GN-Z11, `z = 11.09`.

calculating distances

To calculate these distances, the redshift `z` is used along with a few cosmological parameters.

The Hubble parameter, `H(z)`, is the function used for these calculations. It can be derived from the Friedmann equation. $$ H(z) = H_0 \sqrt { \Omega_r({1+z})^4 + \Omega_m({1+z})^3 + \Omega_k({1+z})^2 + \Omega_\Lambda } $$

The values of the parameters in `H(z)` are being continually refined and the values of some depend on various assumptions. I use the Hubble constant `H_0 = 69.6 \text{ km/s/Mpc}`, mass density of relativistic particles `\Omega_r = 8.6 \times 10^{-5}`, mass density `\Omega_m = 0.286`, curvature `\Omega_k = 0` and dark energy fraction `\Omega_\Lambda = 1 - \Omega_r - \Omega_m - \Omega_k = 0.713914`.

Bennett, C.L. et al The 1% Concordance Hubble Constant Astrophysical Journal 794 (2014)

Now given a redshift, `z` the light-travel distance is $$ d_T(z) = c \int_0^z \frac{dx}{({1+x})E(x)} $$

The age of the universe can be computed from this expression. The edge of the universe has an infinite redshift so w can calculate it using `\lim_{z \rightarrow \infty} d_T(z)`.

The comoving distance to the object with redshift `z` is $$ d_C(z) = c \int_0^z \frac{dx}{E(x)} $$

It's convenient to express the above integrals by making a variable substitution. Using the scale factor `a = 1/(1+z)`, $$E(a) = H_0 \sqrt { \frac{\Omega_r}{a^2} + \frac{\Omega_m}{a} + \Omega_k + a^4\Omega_\Lambda } $$

The light-travel distance is $$D_T(z) = c \int_a^1 \frac{dx}{E(x)}$$

The comoving distance is $$D_C(z) = c \int_a^1 \frac{dx}{xE(x)}$$

The light-travel distance to the edge of the universe is $$D_{T_U}(z) = c \int_0^1 \frac{dx}{E(x)}$$

and the light-travel distance from the edge of the universe to the object as we're observing it now is $$D_{T_0}(z) = c \int_0^a \frac{dx}{E(x)}$$

which can be interpreted as the age of the object when it emitted the light that we're seeing now.

The proper size of the universe is the comoving distance to its edge, $$D_{C_U}(z) = c \int_0^1 \frac{dx}{xE(x)}$$

distance calculator

Below you can You can download the full script.

### Cosmological distance calculator
### Martin Krzywinski, 2018
# The full script supports command-line parameters

z  = 1                     # redshift 
a  = 1/(1+z)               # scale factor
Wm = 0.286                 # mass density
Wr = 8.59798189985467e-05  # relativistic mass
Wk = 0                     # curvature
WV = 1 - Wm - Wr - Wk      # dark matter fraction
n  = 10000                 # integration steps

# Hubble parameter, as function of a = 1/(1+z)
def Ea(a,Wr,Wm,Wk,WV):
    return(math.sqrt(Wr/a**2 + Wm/a + Wk + WV*a**2))

H0   = 69.6            # Hubble constant
c    = 299792.458      # speed of light, km/s
pc   = 3.26156         # parsec to light-year conversion
mult = (c/H0)*pc/1e3   # integrals are in units of c/H0, converts to Gy or Gly
sum_comoving = 0
sum_light    = 0
sum_univage  = 0
sum_univsize = 0

for i in range(n):
    f   = (i+0.5)/n
    x   = a + (1-a) * f # a .. 1
    xx  = f             # 0 .. 1
    ex  = Ea(x,args.Wr,args.Wm,args.Wk,args.WV)
    exx = Ea(xx,args.Wr,args.Wm,args.Wk,args.WV)
    sum_comoving += (1-a)/(x*ex)
    sum_light    += (1-a)/(  ex)
    sum_univsize += 1/(xx*exx)
    sum_univage  += 1/(   exx)

results = [mult*i for i in [sum_univage,sum_univsize,sum_univage-sum_light, \
print("z {:.2f} U {:f} Gy {:f} Gly T0 {:f} Gy T {:f} Gly C {:f} Gly". \

Use the script to generate distances for a given redshift, `z`. For example,

# For galaxy GN-Z11, furtest object ever observed
./ -z 11.09
z 11.09 U 13.720 Gy 46.441 Gly T0 0.414 Gy T 13.306 Gly C 32.216 Gly

The galaxy GN-Z11 has a light-travel distance of 13.3 Gly and a comoving distance of 32.2 Gly. We're seeing it now as it was only 0.4 Gy after the beginning of the universe, which is 13.7 Gy old and the distance to its edge is 46.4 Gly.

# For quasar J1342+0928, furthest quasar ever observed
./ -z 7.54
z 7.54 U 13.720 Gy 46.441 Gly T0 0.699 Gy T 13.021 Gly C 29.355 Gly

The values for U (age and size of universe), will always be the same for a given set of cosmological parameters for any value of `z`. I include them in the output of the script for convenience.

These values match those generated by Ned's online cosmological calculator for a flat universe.


news + thoughts

Two-level factorial experiments

Fri 22-03-2019
To find which experimental factors have an effect, simultaneously examine the difference between the high and low levels of each.

Two-level factorial experiments, in which all combinations of multiple factor levels are used, efficiently estimate factor effects and detect interactions—desirable statistical qualities that can provide deep insight into a system.

They offer two benefits over the widely used one-factor-at-a-time (OFAT) experiments: efficiency and ability to detect interactions.

Martin Krzywinski @MKrzywinski
Nature Methods Points of Significance column: Two-level factorial experiments. (read)

Since the number of factor combinations can quickly increase, one approach is to model only some of the factorial effects using empirically-validated assumptions of effect sparsity and effect hierarchy. Effect sparsity tells us that in factorial experiments most of the factorial terms are likely to be unimportant. Effect hierarchy tells us that low-order terms (e.g. main effects) tend to be larger than higher-order terms (e.g. two-factor or three-factor interactions).

Smucker, B., Krzywinski, M. & Altman, N. (2019) Points of significance: Two-level factorial experiments Nature Methods 16:211–212.

Background reading

Krzywinski, M. & Altman, N. (2014) Points of significance: Designing comparative experiments.. Nature Methods 11:597–598.

Happy 2019 `\pi` Day—
Digits, internationally

Tue 12-03-2019

Celebrate `\pi` Day (March 14th) and set out on an exploration explore accents unknown (to you)!

This year is purely typographical, with something for everyone. Hundreds of digits and hundreds of languages.

A special kids' edition merges math with color and fat fonts.

Martin Krzywinski @MKrzywinski
116 digits in 64 languages. (details)
Martin Krzywinski @MKrzywinski
223 digits in 102 languages. (details)

Check out art from previous years: 2013 `\pi` Day and 2014 `\pi` Day, 2015 `\pi` Day, 2016 `\pi` Day, 2017 `\pi` Day and 2018 `\pi` Day.

Tree of Emotional Life

Sun 17-02-2019

One moment you're :) and the next you're :-.

Make sense of it all with my Tree of Emotional life—a hierarchical account of how we feel.

Martin Krzywinski @MKrzywinski
A section of the Tree of Emotional Life.

Find and snap to colors in an image

Sat 29-12-2018

One of my color tools, the colorsnap application snaps colors in an image to a set of reference colors and reports their proportion.

Below is Times Square rendered using the colors of the MTA subway lines.

Colors used by the New York MTA subway lines.

Martin Krzywinski @MKrzywinski
Times Square in New York City.
Martin Krzywinski @MKrzywinski
Times Square in New York City rendered using colors of the MTA subway lines.
Martin Krzywinski @MKrzywinski
Granger rainbow snapped to subway lines colors from four cities. (zoom)

Take your medicine ... now

Wed 19-12-2018

Drugs could be more effective if taken when the genetic proteins they target are most active.

Design tip: rediscover CMYK primaries.

More of my American Scientific Graphic Science designs

Ruben et al. A database of tissue-specific rhythmically expressed human genes has potential applications in circadian medicine Science Translational Medicine 10 Issue 458, eaat8806.

Predicting with confidence and tolerance

Wed 07-11-2018
I abhor averages. I like the individual case. —J.D. Brandeis.

We focus on the important distinction between confidence intervals, typically used to express uncertainty of a sampling statistic such as the mean and, prediction and tolerance intervals, used to make statements about the next value to be drawn from the population.

Confidence intervals provide coverage of a single point—the population mean—with the assurance that the probability of non-coverage is some acceptable value (e.g. 0.05). On the other hand, prediction and tolerance intervals both give information about typical values from the population and the percentage of the population expected to be in the interval. For example, a tolerance interval can be configured to tell us what fraction of sampled values (e.g. 95%) will fall into an interval some fraction of the time (e.g. 95%).

Martin Krzywinski @MKrzywinski
Nature Methods Points of Significance column: Predicting with confidence and tolerance. (read)

Altman, N. & Krzywinski, M. (2018) Points of significance: Predicting with confidence and tolerance Nature Methods 15:843–844.

Background reading

Krzywinski, M. & Altman, N. (2013) Points of significance: Importance of being uncertain. Nature Methods 10:809–810.