Treemaps en R

Hay cierto interés por los treemaps en general y existen paquetes como treemap y la función map.market del paquete portfolio que permiten construirlos y obtener gráficos como este

que representa la capitalización bursátil de las empresas del IBEX-35 y el porcentaje que destinan al dividendo. Pero me produce cierto desasosiego utilizar áreas y colores para representar magnitudes: ¿es fácil comparar el tamaño relativo de TEF y ELE? ¿Cuánto mayor es ITX que BBVA? ¿Y el dividendo de MAP comparado con el de ACS?

No estoy seguro de hasta qué punto ese tipo de gráficos resultan superiores a otros tal vez menos impactantes como

o

¿Qué opinarán mis lectores?

Nota: Como siempre, el código:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
library( ggplot2 )
library( treemap )

dat <- read.table("http://www.datanalytics.com/uploads/datos_treemap.txt", sep = "\t", header = T)
dat$div[is.na(dat$div)] <- 0

tmPlot(dat, index = "valor", vSize = "cap", vColor = "div", sortID = "-cap")

p.text <- ggplot(dat, aes( x = cap, y = div, label = valor)) + geom_text()
p.text <- p.text + scale_y_continuous( name = "% dividend")
p.text <- p.text + scale_x_continuous( name = "capitalization")
p.text

dat$valor <- as.factor( dat$valor )
dat$valor <- reorder( dat$valor, -dat$cap )

p.bar <- ggplot(dat, aes(valor, weight = cap, fill = div)) + geom_bar()
p.bar <- p.bar + opts( axis.text.x = theme_text( angle = 90 ) )
p.bar <- p.bar + scale_y_continuous( name = "capitalization")
p.bar