[R] 3D Plot

Jim Lemon
2010-04-24T12:01:56Z

On 04/23/2010 10:51 PM, Ariane C. B?hm wrote:
> Hi guys of the R-Help-Team! First of all - you do a
great job!<br
> />I've found a lot of your mails in the internet. So I thought it
would be a
> good idea to ask you a question about R. R is new to
me, so sorry,
> if the question is too simple :) I have a
matrix. I can make a
> 2D Heatmap of this matrix. My question:<br
/>Can I also make a 3D
> Heatmap of this matrix - so the third parameter should the value in the
> matrix. My first thought was : >
mat&lt;- read.table(file
> ="AvgMatrix.mat") >
x<-as.matrix(mat) > hv
> &lt;- heatmap.2 (x, col=topo.colors, Colv = NA, Rowv = NA,
> main=&quot;AvgMatrix&quot;, xlab=&quot;Columns&quot;,
ylab=&quot;Rows&quot;,
> key=TRUE, trace ="none") But that is just a 2D
heatmap.<br
> /> Thanks for your help Ariane<br
/>
>
Hi Ariane,
The color2D.matplot function can almost do this, as there is an option
to display the numeric values within the cells. Now with the small
kludge of adding an extra argument:

x3=NULL

and changing the following lines:

    if(show.values)
     text(sort(rep((1:xdim[2])-0.5,xdim[1])),
      rep(seq(xdim[1]-0.5,0,by=-1),xdim[2]),
      round(x,show.values),col=vcol,cex=vcex)
   }

to this:

    if(show.values)
     if(is.null(x3)) xval<-x
     else xval<-x3
     text(sort(rep((1:xdim[2])-0.5,xdim[1])),
      rep(seq(xdim[1]-0.5,0,by=-1),xdim[2]),
      round(xval,show.values),col=vcol,cex=vcex)
   }

You may have a solution to your plotting problem.

Of course this will do nothing at all for your problem of sending HTML
formatted messages.

Jim