WELL–FORMED.EIGENFACTOR - Moritz...

38
WELL–FORMED.EIGENFACTOR | SIGGRAPH Information Aesthetics Showcase | Aug 3, 2009 WELL–FORMED . EIGENFACTOR Visualizing information flow in science Moritz Stefaner, Carl Bergstrom and Martin Rosvall

Transcript of WELL–FORMED.EIGENFACTOR - Moritz...

Page 1: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

WELL–FORMED.EIGENFACTOR | SIGGRAPH Information Aesthetics Showcase | Aug 3, 2009

WELL–FORMED.EIGENFACTORVisualizing information flow in science

Moritz Stefaner, Carl Bergstrom and Martin Rosvall

Page 2: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Overview

Team

Approach & data analysis

Interactive visualizations

Remarks & deleted scenes

Page 3: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Team

Eigenfactor TeamUniversity of Washington, Seattle

Carl Bergstrom, Jevin West, Ben Althouse

Martin RosvallUniversity of Umea, Sweden

Moritz StefanerUniversity of Applied Sciences Potsdam, Germany

Page 4: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Mapping science

Page 5: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

!""#$%&

"'()$*)

+,-./$*

*'%0$)1,(

!/.#(1$*.#

2'%0$)1,(

3$4*'%0$)1,(

54*$.#6./&6"%,)4/.#$1(

")(*'4#4-(

74#(0%,)

8$4*,49$4#4-(

3$41%*'/4#4-(

8:)$*

7#./1

9$4#4-(3$4&$;%,)$1(

<(&,4#4-(

=%/%1$*)

3,.$/

,%)%.,*'

=%4#4-(

!-,$*:#1:,%

!#1%,/.1$;%

%/%,-(

>4?$*4#4-(

7#./1

.-,$*:#1:,%

!/$0.#

3%'.;$4,

@/;$,4/0%/1.#

5*$%/*%

2'%0$*.#

@/-$/%%,$/-

>4:,$)0

A:1,$1$4/

A%:,4#4-(

5"4,1)

0%&$*$/% 2#.))$*.#

)1:&$%)

A:,)$/-

7)(*'4#4-(

=%4-,."'(

54*$.#6B4,C

D%,0.14#4-(

2#$/$*.#

7'.,0.*4#4-(

E/1%,/.1$4/.#

)1:&$%)

51.1$)1$*)

!,*'%4#4-(

D%04-,."'$*)

@*4/40$*)

2'$#&

7)(*'4#4-(

<:0./

-%4-,."'(

7,4&:*1$4/

,%)%.,*'

8./:F.*1:,$/-8.1%,$.#6)*$%/*%

@/-$/%%,$/-

2#$/$*.#

1,$.#)

@&:*.1$4/

!/1',4"4#4-(

7:9#$*

'%.#1'

G.B

54*$4#4-(

7'$#4)4"'(

!)$./6

)1:&$%)

H%#$-$4/

8$/%,4#4-(

!*4:)1$*)

51.1$)1$*.#

"'()$*)

>'%,04&(/.0$*)

7'()$*.#6

*'%0$)1,(

7'.,0.*%:1$*.#

,%)%.,*'

@#%*1,4*'%0$)1,(

@*4#4-(

G./-:.-%

24-/$1$;%

5*$%/*%

3,.$/6)1:&$%)

54$#I8.,$/%

9$4#4-(

7'()$4#4-(

7#./1

-%/%1$*)

!,*'$1%*1:,%

D%)$-/

Mapping science

http://proto.lanl.gov/jbollen/Johan_Bollen/Research.html

Page 6: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Mapping science

http://wbpaley.com/brad/mapOfScience/

Page 7: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Mapping science

http://cluster.cis.drexel.edu/~cchen/citespace/

Page 8: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Our approach

Understand and map science as a dynamic network

Map information flow

Move beyond traditional ball–and–stick network visualizations

Page 9: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Molecular & Cell Biology

Medicine

Physics

Ecology & Evolution

Economics

Geosciences

Psychology

Chemistry

Psychiatry

Environmental Chemistry & Microbiology

Mathematics

Computer Science

Analytic ChemistryBusiness & Marketing

Political Science

Fluid Mechanics

Medical Imaging

Material Engineering

Sociology

Probability & Statistics

Astronomy & Astrophysics

Gastroenterology

Law

Chemical Engineering

Education

Telecommunication

Control Theory

Operations Research

Ophthalmology

Crop Science

Geography

Anthropology

Computer Imaging

Agriculture

Parasitology

Dentistry

Dermatology

Urology

Rheumatology

Applied Acoustics

Pharmacology

Pathology

Otolaryngology

Electromagnetic Engineering

Circuits

Power Systems

Tribology

Neuroscience

Orthopedics Veterinary

Environmental Health

A

Citation flow from B to ACitation flow within field

Citation flow from A to BCitation flow out of field

B

Existing Eigenfactor diagram

Page 10: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

3

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

0001

110

10

0

111

(a) (d)(c)(b)

1111100

01011

1100

10000

0110

11011

001110111

1001

0100

11111111010

10110

10101

11110

00011

00100000

1111101

10100

01010

1110

100010111

00010

1111100 1100 0110 11011 10000 11011 0110 0011 10111 10010011 1001 0100 0111 10001 1110 0111 10001 0111 1110 00001110 10001 0111 1110 0111 1110 1111101 1110 0000 10100 00001110 10001 0111 0100 10110 11010 10111 1001 0100 1001 101111001 0100 1001 0100 0011 0100 0011 0110 11011 0110 0011 01001001 10111 0011 0100 0111 10001 1110 10001 0111 0100 10110111111 10110 10101 11110 00011

0000

001

11

100

01

101

110011

00

111

1010100

010

00

10

011

11011

0010

010

1101

10

000111

1100

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

110 00010 0001

0 1011111

FIG. 1 Detecting regularities in patterns of movement on a network (derived from (13) and also available in a dynamic version(17)). (a) We want to e!ectively and concisely describe the trace of a random walker on a network. The orange line showsone sample trajectory. For an optimally e"cient one-level description, we can use the codewords of the Hu!man codebookdepicted in (b). The 314 bits shown under the network describes the sample trajectory in (a), starting with 1111100 for thefirst node on the walk in the upper left corner, 1100 for the second node, etc., and ending with 00011 for the last node on thewalk in the lower right corner. (c) A two-level description of the random walk, in which an index codebook is used to switchbetween module codebooks, yields on average a 32% shorter description for this network. The codes of the index codebook forswitching module codebooks and the codes used to indicate an exit from each module are shown to the left and the right of thearrows under the network, respectively. Using this code, we capitalize on structures with long persistence times, and we canuse fewer bits than we could do with a one-level description. For the walk in (a), we only need the 243 bits shown under thethe network in (c). The first three bits 111 indicate that the walk begins in the red module, the code 0000 specifies the firstnode on the walk, and so forth. (d) Reporting only the module names, and not the locations within the modules, provides ane"cient coarse-graining of the network.

a random walker visits each node in the module or exitsthe module.

Here emerges the duality between coding a data streamand finding regularities in the structure that generatesthat stream. Using multiple codebooks, we transform theproblem of minimizing the description length of placestraced by a path into the problem of how we shouldbest partition the network with respect to flow. Howmany modules should we use, and which nodes should beassigned to which modules to minimize the map equa-tion? Figure 1(c) illustrates a two-level description thatcapitalizes on structures with long persistence time andencodes the walk in panel (a) more e!ciently than theone-level description in panel (b). We have implementeda dynamic visualization and made it available for any-one to explore the inference-compression duality and themechanics of the map equation (http://www.tp.umu.se/˜rosvall/livemod/mapequation/).

Figure 2 visualizes the use of one or multiple code-books for the network in Fig. 1. The sparklines show howthe description length associated with between-modulemovements increases with the number of modules andmore frequent use of the index codebook. Contrarily, thedescription length associated with within-module move-ments decreases with the number of modules and withthe use of smaller module codebooks. The sum of thetwo, the full description length, takes a minimum at fourmodules. We use stacked boxes to illustrate the rates at

which a random walker visits nodes and enters and ex-its modules. The codewords to the right of the boxes arederived from the within-module relative rates and within-index relative rates, respectively. Both relative rates andcodewords change from the one-codebook solution withall nodes in one module, to the optimal solution, with anindex codebook and four module codebooks with nodesassigned to four modules (see online dynamic visualiza-tion (17)).

III. THE MAP EQUATION

We have described the Hu"man coding process in de-tail in order to make it clear how the coding structureworks. But of course the aim of community detection isnot to encode a particular path through a network. Incommunity detection, we simply want to find the modu-lar structure of the network with respect to flow and ourapproach is to exploit the inference-compression dualityto do so. In fact, we do not even need to devise an optimalcode for a given partition to estimate how e!cient thatoptimal code would be. This is the whole point of themap equation. It tells us how e!cient the optimal codewould be for any given partition, without actually devis-ing that code. That is, it tells us the theoretical limitof how concisely we can specify a network path using agiven partition structure. To find an optimal partition of

Data analysis

Data: Thomson Reuters' Journal Citation Reports 1997–2005: 7000 journals with 60,000,000 citations

Page 11: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Codebook

3

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

0001

110

10

0

111

(a) (d)(c)(b)

1111100

01011

1100

10000

0110

11011

001110111

1001

0100

11111111010

10110

10101

11110

00011

00100000

1111101

10100

01010

1110

100010111

00010

1111100 1100 0110 11011 10000 11011 0110 0011 10111 10010011 1001 0100 0111 10001 1110 0111 10001 0111 1110 00001110 10001 0111 1110 0111 1110 1111101 1110 0000 10100 00001110 10001 0111 0100 10110 11010 10111 1001 0100 1001 101111001 0100 1001 0100 0011 0100 0011 0110 11011 0110 0011 01001001 10111 0011 0100 0111 10001 1110 10001 0111 0100 10110111111 10110 10101 11110 00011

0000

001

11

100

01

101

110011

00

111

1010100

010

00

10

011

11011

0010

010

1101

10

000111

1100

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

110 00010 0001

0 1011111

FIG. 1 Detecting regularities in patterns of movement on a network (derived from (13) and also available in a dynamic version(17)). (a) We want to e!ectively and concisely describe the trace of a random walker on a network. The orange line showsone sample trajectory. For an optimally e"cient one-level description, we can use the codewords of the Hu!man codebookdepicted in (b). The 314 bits shown under the network describes the sample trajectory in (a), starting with 1111100 for thefirst node on the walk in the upper left corner, 1100 for the second node, etc., and ending with 00011 for the last node on thewalk in the lower right corner. (c) A two-level description of the random walk, in which an index codebook is used to switchbetween module codebooks, yields on average a 32% shorter description for this network. The codes of the index codebook forswitching module codebooks and the codes used to indicate an exit from each module are shown to the left and the right of thearrows under the network, respectively. Using this code, we capitalize on structures with long persistence times, and we canuse fewer bits than we could do with a one-level description. For the walk in (a), we only need the 243 bits shown under thethe network in (c). The first three bits 111 indicate that the walk begins in the red module, the code 0000 specifies the firstnode on the walk, and so forth. (d) Reporting only the module names, and not the locations within the modules, provides ane"cient coarse-graining of the network.

a random walker visits each node in the module or exitsthe module.

Here emerges the duality between coding a data streamand finding regularities in the structure that generatesthat stream. Using multiple codebooks, we transform theproblem of minimizing the description length of placestraced by a path into the problem of how we shouldbest partition the network with respect to flow. Howmany modules should we use, and which nodes should beassigned to which modules to minimize the map equa-tion? Figure 1(c) illustrates a two-level description thatcapitalizes on structures with long persistence time andencodes the walk in panel (a) more e!ciently than theone-level description in panel (b). We have implementeda dynamic visualization and made it available for any-one to explore the inference-compression duality and themechanics of the map equation (http://www.tp.umu.se/˜rosvall/livemod/mapequation/).

Figure 2 visualizes the use of one or multiple code-books for the network in Fig. 1. The sparklines show howthe description length associated with between-modulemovements increases with the number of modules andmore frequent use of the index codebook. Contrarily, thedescription length associated with within-module move-ments decreases with the number of modules and withthe use of smaller module codebooks. The sum of thetwo, the full description length, takes a minimum at fourmodules. We use stacked boxes to illustrate the rates at

which a random walker visits nodes and enters and ex-its modules. The codewords to the right of the boxes arederived from the within-module relative rates and within-index relative rates, respectively. Both relative rates andcodewords change from the one-codebook solution withall nodes in one module, to the optimal solution, with anindex codebook and four module codebooks with nodesassigned to four modules (see online dynamic visualiza-tion (17)).

III. THE MAP EQUATION

We have described the Hu"man coding process in de-tail in order to make it clear how the coding structureworks. But of course the aim of community detection isnot to encode a particular path through a network. Incommunity detection, we simply want to find the modu-lar structure of the network with respect to flow and ourapproach is to exploit the inference-compression dualityto do so. In fact, we do not even need to devise an optimalcode for a given partition to estimate how e!cient thatoptimal code would be. This is the whole point of themap equation. It tells us how e!cient the optimal codewould be for any given partition, without actually devis-ing that code. That is, it tells us the theoretical limitof how concisely we can specify a network path using agiven partition structure. To find an optimal partition of

Page 12: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

“Area codes”

3

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

0001

110

10

0

111

(a) (d)(c)(b)

1111100

01011

1100

10000

0110

11011

001110111

1001

0100

11111111010

10110

10101

11110

00011

00100000

1111101

10100

01010

1110

100010111

00010

1111100 1100 0110 11011 10000 11011 0110 0011 10111 10010011 1001 0100 0111 10001 1110 0111 10001 0111 1110 00001110 10001 0111 1110 0111 1110 1111101 1110 0000 10100 00001110 10001 0111 0100 10110 11010 10111 1001 0100 1001 101111001 0100 1001 0100 0011 0100 0011 0110 11011 0110 0011 01001001 10111 0011 0100 0111 10001 1110 10001 0111 0100 10110111111 10110 10101 11110 00011

0000

001

11

100

01

101

110011

00

111

1010100

010

00

10

011

11011

0010

010

1101

10

000111

1100

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

110 00010 0001

0 1011111

FIG. 1 Detecting regularities in patterns of movement on a network (derived from (13) and also available in a dynamic version(17)). (a) We want to e!ectively and concisely describe the trace of a random walker on a network. The orange line showsone sample trajectory. For an optimally e"cient one-level description, we can use the codewords of the Hu!man codebookdepicted in (b). The 314 bits shown under the network describes the sample trajectory in (a), starting with 1111100 for thefirst node on the walk in the upper left corner, 1100 for the second node, etc., and ending with 00011 for the last node on thewalk in the lower right corner. (c) A two-level description of the random walk, in which an index codebook is used to switchbetween module codebooks, yields on average a 32% shorter description for this network. The codes of the index codebook forswitching module codebooks and the codes used to indicate an exit from each module are shown to the left and the right of thearrows under the network, respectively. Using this code, we capitalize on structures with long persistence times, and we canuse fewer bits than we could do with a one-level description. For the walk in (a), we only need the 243 bits shown under thethe network in (c). The first three bits 111 indicate that the walk begins in the red module, the code 0000 specifies the firstnode on the walk, and so forth. (d) Reporting only the module names, and not the locations within the modules, provides ane"cient coarse-graining of the network.

a random walker visits each node in the module or exitsthe module.

Here emerges the duality between coding a data streamand finding regularities in the structure that generatesthat stream. Using multiple codebooks, we transform theproblem of minimizing the description length of placestraced by a path into the problem of how we shouldbest partition the network with respect to flow. Howmany modules should we use, and which nodes should beassigned to which modules to minimize the map equa-tion? Figure 1(c) illustrates a two-level description thatcapitalizes on structures with long persistence time andencodes the walk in panel (a) more e!ciently than theone-level description in panel (b). We have implementeda dynamic visualization and made it available for any-one to explore the inference-compression duality and themechanics of the map equation (http://www.tp.umu.se/˜rosvall/livemod/mapequation/).

Figure 2 visualizes the use of one or multiple code-books for the network in Fig. 1. The sparklines show howthe description length associated with between-modulemovements increases with the number of modules andmore frequent use of the index codebook. Contrarily, thedescription length associated with within-module move-ments decreases with the number of modules and withthe use of smaller module codebooks. The sum of thetwo, the full description length, takes a minimum at fourmodules. We use stacked boxes to illustrate the rates at

which a random walker visits nodes and enters and ex-its modules. The codewords to the right of the boxes arederived from the within-module relative rates and within-index relative rates, respectively. Both relative rates andcodewords change from the one-codebook solution withall nodes in one module, to the optimal solution, with anindex codebook and four module codebooks with nodesassigned to four modules (see online dynamic visualiza-tion (17)).

III. THE MAP EQUATION

We have described the Hu"man coding process in de-tail in order to make it clear how the coding structureworks. But of course the aim of community detection isnot to encode a particular path through a network. Incommunity detection, we simply want to find the modu-lar structure of the network with respect to flow and ourapproach is to exploit the inference-compression dualityto do so. In fact, we do not even need to devise an optimalcode for a given partition to estimate how e!cient thatoptimal code would be. This is the whole point of themap equation. It tells us how e!cient the optimal codewould be for any given partition, without actually devis-ing that code. That is, it tells us the theoretical limitof how concisely we can specify a network path using agiven partition structure. To find an optimal partition of

Page 13: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Clusters

3

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

0001

110

10

0

111

(a) (d)(c)(b)

1111100

01011

1100

10000

0110

11011

001110111

1001

0100

11111111010

10110

10101

11110

00011

00100000

1111101

10100

01010

1110

100010111

00010

1111100 1100 0110 11011 10000 11011 0110 0011 10111 10010011 1001 0100 0111 10001 1110 0111 10001 0111 1110 00001110 10001 0111 1110 0111 1110 1111101 1110 0000 10100 00001110 10001 0111 0100 10110 11010 10111 1001 0100 1001 101111001 0100 1001 0100 0011 0100 0011 0110 11011 0110 0011 01001001 10111 0011 0100 0111 10001 1110 10001 0111 0100 10110111111 10110 10101 11110 00011

0000

001

11

100

01

101

110011

00

111

1010100

010

00

10

011

11011

0010

010

1101

10

000111

1100

111 0000 11 01 101 100 101 01 0001 0 110 011 00 110 00 1111011 10 111 000 10 111 000 111 10 011 10 000 111 10 111 100010 10 011 010 011 10 000 111 0001 0 111 010 100 011 00 11100 011 00 111 00 111 110 111 110 1011 111 01 101 01 0001 0 110111 00 011 110 111 1011 10 111 000 10 000 111 0001 0 111 0101010 010 1011 110 00 10 011

110 00010 0001

0 1011111

FIG. 1 Detecting regularities in patterns of movement on a network (derived from (13) and also available in a dynamic version(17)). (a) We want to e!ectively and concisely describe the trace of a random walker on a network. The orange line showsone sample trajectory. For an optimally e"cient one-level description, we can use the codewords of the Hu!man codebookdepicted in (b). The 314 bits shown under the network describes the sample trajectory in (a), starting with 1111100 for thefirst node on the walk in the upper left corner, 1100 for the second node, etc., and ending with 00011 for the last node on thewalk in the lower right corner. (c) A two-level description of the random walk, in which an index codebook is used to switchbetween module codebooks, yields on average a 32% shorter description for this network. The codes of the index codebook forswitching module codebooks and the codes used to indicate an exit from each module are shown to the left and the right of thearrows under the network, respectively. Using this code, we capitalize on structures with long persistence times, and we canuse fewer bits than we could do with a one-level description. For the walk in (a), we only need the 243 bits shown under thethe network in (c). The first three bits 111 indicate that the walk begins in the red module, the code 0000 specifies the firstnode on the walk, and so forth. (d) Reporting only the module names, and not the locations within the modules, provides ane"cient coarse-graining of the network.

a random walker visits each node in the module or exitsthe module.

Here emerges the duality between coding a data streamand finding regularities in the structure that generatesthat stream. Using multiple codebooks, we transform theproblem of minimizing the description length of placestraced by a path into the problem of how we shouldbest partition the network with respect to flow. Howmany modules should we use, and which nodes should beassigned to which modules to minimize the map equa-tion? Figure 1(c) illustrates a two-level description thatcapitalizes on structures with long persistence time andencodes the walk in panel (a) more e!ciently than theone-level description in panel (b). We have implementeda dynamic visualization and made it available for any-one to explore the inference-compression duality and themechanics of the map equation (http://www.tp.umu.se/˜rosvall/livemod/mapequation/).

Figure 2 visualizes the use of one or multiple code-books for the network in Fig. 1. The sparklines show howthe description length associated with between-modulemovements increases with the number of modules andmore frequent use of the index codebook. Contrarily, thedescription length associated with within-module move-ments decreases with the number of modules and withthe use of smaller module codebooks. The sum of thetwo, the full description length, takes a minimum at fourmodules. We use stacked boxes to illustrate the rates at

which a random walker visits nodes and enters and ex-its modules. The codewords to the right of the boxes arederived from the within-module relative rates and within-index relative rates, respectively. Both relative rates andcodewords change from the one-codebook solution withall nodes in one module, to the optimal solution, with anindex codebook and four module codebooks with nodesassigned to four modules (see online dynamic visualiza-tion (17)).

III. THE MAP EQUATION

We have described the Hu"man coding process in de-tail in order to make it clear how the coding structureworks. But of course the aim of community detection isnot to encode a particular path through a network. Incommunity detection, we simply want to find the modu-lar structure of the network with respect to flow and ourapproach is to exploit the inference-compression dualityto do so. In fact, we do not even need to devise an optimalcode for a given partition to estimate how e!cient thatoptimal code would be. This is the whole point of themap equation. It tells us how e!cient the optimal codewould be for any given partition, without actually devis-ing that code. That is, it tells us the theoretical limitof how concisely we can specify a network path using agiven partition structure. To find an optimal partition of

Page 14: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Demos

http://well-formed.eigenfactor.org

Page 15: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Neuroscience story

Page 16: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Sankey diagrams

http://densitydesign.org

Page 17: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 18: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 19: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 20: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

DemosDemos

Page 21: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

DemosDemos

Page 22: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

DemosDemos

Page 23: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

DemosDemos

Page 24: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 25: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Hierarchical Edge Bundling

Danny Holten: Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data, IEEE Transactions on Visualization and Computer Graphics, Vol. 12, No. 5, September/October 2006

Danny Holten and Jarke J. van Wijk: Force-Directed Edge Bundling for Graph Visualization, Eurographics/ IEEE-VGTC Symposium on Visualization 2009, Volume 28 (2009), Number 3

Danny Holten & Jarke J. van Wijk / Force-Directed Edge Bundling for Graph Visualization

Figure 7: US airlines graph (235 nodes, 2101 edges) (a) not bundled and bundled using (b) FDEB with inverse-linear model,(c) GBEB, and (d) FDEB with inverse-quadratic model.

Figure 8: US migration graph (1715 nodes, 9780 edges) (a) not bundled and bundled using (b) FDEB with inverse-linearmodel, (c) GBEB, and (d) FDEB with inverse-quadratic model. The same migration flow is highlighted in each graph.

Figure 9: A low amount of straightening provides an indication of the number of edges comprising a bundle by widening thebundle. (a) s = 0, (b) s = 10, and (c) s = 40. If s is 0, color more clearly indicates the number of edges comprising a bundle.

we generated use the rendering technique described in Sec-tion 4.1. To facilitate the comparison of migration flow inFigure 8, we use a similar rendering technique as the onethat Cui et al. [CZQ!08] used to generate Figure 8c.

The airlines graph is comprised of 235 nodes and 2101edges. It took 19 seconds to calculate the bundled airlinesgraphs (Figures 7b and 7d) using the calculation scheme pre-

sented in Section 3.3. The migration graph is comprised of1715 nodes and 9780 edges. It took 80 seconds to calculatethe bundled migration graphs (Figures 8b and 8d) using thesame calculation scheme. All measurements were performedon an Intel Core 2 Duo 2.66GHz PC running Windows XPwith 2GB of RAM and a GeForce 8800GT graphics card.Our prototype was implemented in Borland Delphi 7.

c! 2009 The Author(s)Journal compilation c! 2009 The Eurographics Association and Blackwell Publishing Ltd.

Page 26: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Visual tweaks

Page 27: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Deleted scenes

Page 28: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 29: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 30: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 31: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 32: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 33: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 34: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 35: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 36: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 37: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level
Page 38: WELL–FORMED.EIGENFACTOR - Moritz Stefanermoritz.stefaner.eu/downloads/presentations/siggraph/eigenfactor.siggraph.pdf · one sample trajectory. For an optimally efficient one-level

Thank you for listening

Q?A!

Information Aesthetics ShowcaseRoom 274-277

http://well-formed.eigenfactor.org