[R-es] Gráfico de Barras

Mauricio Monsalvo m.monsalvo en gmail.com
Mar Sep 6 22:23:47 CEST 2016


Hola.
Siguiendo a Mittal (2001); R Graph Cookbook creo haber logrado construir el
gráfico de barras que buscada. La matriz que utilizo para el "height" va
adjunta.
Y mi sintaxis:
barplot(t(barras), col=col.segmentos, border=F
        , names.arg=Meses, las=2, cex=.75, cex.axis=0.8
        , ylab="% del Segmento sobre el Total")
       legend(.5, .2, ncol=5, cex=.75, bty="n" #bg="white" #, lwd=F ,
horiz=T), pch = 15
              , segmentos #Referencias
              , fill = col.segmentos, border = "darkblue" ) #
       grid(nx=NA, ny=NULL, col = "gray", lwd = 1, lty = 3) #
       abline(v=c(12, 24, 36, 48, 60), lwd = 1, lty = 3, col = "red") #red
para que se ven los cortes en los años
       text(c(6, 18, 30, 42, 54), rep(.3, 5), c(2011, 2012, 2013, 2014,
2015))
​Queda bastante lindo, pero el problema lo tengo con ​abline y text, que
quedan "desajustados" de los meses Dic de cada año, porque está mal
indicada la referencia en c(12, 24, 36, 48, 60), a pesar de que dim(barras)
y las categorías claramente son 67, que son las barras que contruyo.
Luego, cuando intento entender por qué, pruebo:
mm <- barplot(t(barras), col=col.segmentos, border=F
        , names.arg=Meses, las=2, cex=.75, cex.axis=0.8
        , ylab="% del Segmento sobre el Total")
y resulta:
> mm
 [1]  0.7  1.9  3.1  4.3  5.5  6.7  7.9  9.1 10.3 11.5 12.7 13.9 15.1 16.3
17.5 18.7 19.9 21.1 22.3 23.5 24.7 25.9 27.1 28.3 29.5
[26] 30.7 31.9 33.1 34.3 35.5 36.7 37.9 39.1 40.3 41.5 42.7 43.9 45.1 46.3
47.5 48.7 49.9 51.1 52.3 53.5 54.7 55.9 57.1 58.3 59.5
[51] 60.7 61.9 63.1 64.3 65.5 66.7 67.9 69.1 70.3 71.5 72.7 73.9 75.1 76.3
77.5 78.7 79.9
Lo cual parece una buena pista, pero no consigo entender qué hace... por
qué el resultado no es 1:67? ¿Tengo que hacer algo especial para eso?
Obvio, que ahora si utilizo:
       abline(v=mm[c(12, 24, 36, 48, 60)], lwd = 1, lty = 3, col = "red")
#Para los Años
       text(mm[c(12, 24, 36, 48, 60)]-6, rep(.3, 5), c(2011, 2012, 2013,
2014, 2015))
funcionaría, pero me parece poco intuitivo y además no entiendo por qué lo
hace y me "obliga" a crear el objeto mm, en lugar de hacerlo directamente.
Muchas gracias.
-- 
Mauricio
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20160906/3591d94a/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: barras.csv
Type: text/csv
Size: 10891 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20160906/3591d94a/attachment-0001.bin>


Más información sobre la lista de distribución R-help-es