Hola,
Estoy tratando de hacer un diagrama de barras que en principio no parece
muy difícil pero que no me sale.
Mi matriz es del siguiente tipo:
[86,90[ [90,94[ [94,98[ [98,102[
[78,82[ 1 2 1 1
[78,82[ 5 0 0 0
[82,86[ 0 1 0 2
[82,86[ 0 3 0 0
Y quisiera representar para [78,82[ dos barras juntas y en cada una de
ellas que la barra se divida según el valor para cada uno de los
intervalos [86,90[ [90,94[ [94,98[ [98,102[. Del mismo modo, para
[82,86[. Pero que las dos barras correspondientes a [78,82[ y [82,86[
salgan separadas.
Os adjunto un gráfico parecido a lo que quisiera que saliera, pero las
dos barras primeras deberían salir juntas y con sólo la etiqueta [78,82[
y las dos siguientes barras juntas con la etiqueta [82,86[ pero con una
separación entre la barra segunda y la tercera.
He probado con barplot poniendo beside=TRUE pero no me sale. ¿Alguien me
podría sugerir algo?. Os adjunto el archivo de datos de ejemplo. El
código básico que he utilizado es:
color <- c("steelblue1", "orange", "khaki3",
"springgreen4")
mat <- read.table("matriz.txt",header=FALSE)
mat <- as.matrix(mat)
barplot(t(mat), col = color, cex.names = 0.75)
Muchas gracias de antemano.
Saludos,
Guillermo
------------ próxima parte ------------
An embedded and charset-unspecified text was scrubbed...
Name: matriz.txt
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20130603/69a5964d/attachment.txt>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: ejemplo.pdf
Type: application/pdf
Size: 4342 bytes
Desc:
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20130603/69a5964d/attachment.pdf>
Hola, Ya he podido conseguirlo. Simplemente con space=c(1,0) en barplot, salen las barras como quería. Gracias. Saludos, Guillermo> Hola, > > Estoy tratando de hacer un diagrama de barras que en principio no parece > muy difícil pero que no me sale. > > Mi matriz es del siguiente tipo: > > [86,90[ [90,94[ [94,98[ [98,102[ > [78,82[ 1 2 1 1 > [78,82[ 5 0 0 0 > [82,86[ 0 1 0 2 > [82,86[ 0 3 0 0 > > Y quisiera representar para [78,82[ dos barras juntas y en cada una de > ellas que la barra se divida según el valor para cada uno de los > intervalos [86,90[ [90,94[ [94,98[ [98,102[. Del mismo modo, para > [82,86[. Pero que las dos barras correspondientes a [78,82[ y [82,86[ > salgan separadas. > > Os adjunto un gráfico parecido a lo que quisiera que saliera, pero las > dos barras primeras deberían salir juntas y con sólo la etiqueta [78,82[ > y las dos siguientes barras juntas con la etiqueta [82,86[ pero con una > separación entre la barra segunda y la tercera. > > He probado con barplot poniendo beside=TRUE pero no me sale. ¿Alguien me > podría sugerir algo?. Os adjunto el archivo de datos de ejemplo. El > código básico que he utilizado es: > > color <- c("steelblue1", "orange", "khaki3", "springgreen4") > mat <- read.table("matriz.txt",header=FALSE) > mat <- as.matrix(mat) > barplot(t(mat), col = color, cex.names = 0.75) > > Muchas gracias de antemano. > > Saludos, > > Guillermo >