[R] Display of 3d arrays
ben@zoo.ufl.edu
ben at zoo.ufl.edu
Mon Aug 27 15:25:10 CEST 2001
This isn't quite a perfect solution but you might be able to make it
work:
## data
x <- c(170,174,173,172,161,
171,178,174,166,149,
168,174,173,166,156,
171,170,173,166,164,
167,170,170,171,169,
138,131,128,128,125,
138,127,129,122,134,
144,131,130,127,132,
142,138,130,131,129,
146,141,135,129,131,
124,123,127,125,125,
125,126,126,126,123,
127,123,125,128,128,
123,121,125,125,126)
## reshape data to your specifications
y <- array(x,dim=c(5,5,3))
z <- aperm(y,c(2,1,3))
## color matrix from array
colmat <- apply(z/256,c(1,2),function(z)do.call("rgb",as.list(z)))
## hack -- fake image() into plotting specific colors
cols <- as.vector(colmat)
image(matrix(1:length(colmat),nrow=nrow(colmat)),col=cols)
## test
tstarr <- array(c(256,256,0,0,0,0,256,256,0,256,256,0),
dim=c(2,2,3))
tstarr
colmat <- apply(tstarr/256,c(1,2),function(z)do.call("rgb",as.list(z)))
cols <- as.vector(colmat)
image(matrix(1:length(colmat),nrow=nrow(colmat)),col=cols)
On Sun, 26 Aug 2001, Agustin Lobo wrote:
> Hi!
>
> Is it possible to display a 3d array as
> an RGB image? For example, given the following
> array:
> > matriz3d
> , , 1
>
> [,1] [,2] [,3] [,4] [,5]
> [1,] 170 174 173 172 161
> [2,] 171 178 174 166 149
> [3,] 168 174 173 166 156
> [4,] 171 170 173 166 164
> [5,] 167 170 170 171 169
>
> , , 2
>
> [,1] [,2] [,3] [,4] [,5]
> [1,] 138 131 128 128 125
> [2,] 138 127 129 122 134
> [3,] 144 131 130 127 132
> [4,] 142 138 130 131 129
> [5,] 146 141 135 129 131
>
> , , 3
>
> [,1] [,2] [,3] [,4] [,5]
> [1,] 124 123 127 125 125
> [2,] 125 126 126 126 123
> [3,] 127 123 125 128 128
> [4,] 123 121 125 125 126
> [5,] 118 122 124 126 125
>
> the first row would be diplayed with rgb colors matriz3d[1,1:5,]
>
> (170 138 124) (174 131 123) (173 128 127) (172 128 125) (161 125 125)
>
>
> Thanks
>
> Agus
>
> Dr. Agustin Lobo
> Instituto de Ciencias de la Tierra (CSIC)
> Lluis Sole Sabaris s/n
> 08028 Barcelona SPAIN
> tel 34 93409 5410
> fax 34 93411 0012
> alobo at ija.csic.es
>
>
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
> r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
>
--
318 Carr Hall bolker at zoo.ufl.edu
Zoology Department, University of Florida http://www.zoo.ufl.edu/bolker
Box 118525 (ph) 352-392-5697
Gainesville, FL 32611-8525 (fax) 352-392-3704
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
More information about the R-help
mailing list