[R] Three-dimensional (3D) movement using 'R'

David Winsemius dwinsemius at comcast.net
Fri Dec 4 18:01:28 CET 2009


On Dec 4, 2009, at 7:07 AM, StRose, Suzanne wrote:

> Hi again,
>
> Apologies for the last email I forwarded. Apparently, my data was  
> not legible. So, I have a question regarding the construction of 3D  
> graphs in ‘R’, BUT these graphs also need to illustrate movement  
> (with time) of the prostate gland (using radiological techniques).   
> I am not sure how to do this in ‘R’ although I’m sure there is some  
> way of doing it.
>
> Below, I have copied and pasted some of the data on which I’m  
> working. The data are for axial images of the prostate for one  
> patient at 10 time points. On the axial images, A=anterior and  
> positive; L=left and positive, so that A negative=posterior and L  
> negative =right (see Figure 1 below). The signs (positive and  
> negative) indicate movement away from or toward the baseline,  
> respectively. So, any deviation away from the baseline is ‘+’ and  
> any excursion toward baseline is negative (with the baseline  
> indicated by Time=0). [Vector means the largest average directional  
> change relative to the nominated direction of assessment; numbers  
> are in mm].
>

It may be clear to radiographers in the audience, but what those 4 x n  
numbers represent is not clear to me. Are they the lateral and AP  
boundaries of the prostate? What you write suggests these might be  
called "relative vectors", i.e. any point would be the vector sum? And  
why would we be plotting locations in 3d when this is an axial "slice"?

> I would like to plot 3D graphs illustrating movement of the prostate  
> with time for each of the four patients but do not know how.
>
> Apologies again for the first email. I’ve attached an Excel file  
> (hope this is okay) with the same data as in Table 1.
>
> Hopefully this is a bit clearer.
>
> Thanks.
>
> Best wishes,
> Suzanne
>
>
> Table 1
> Patient_Axial
> Time
> Vector L
> Vector R
> Vector A
> Vector P
> 316868HO_DGE_cine1_ax_px
>
SNIPPED DATA that arrived as an xls file to my mail client ... since I  
suspect it did not reach most of the list: This is an R form of the  
data from what appears to be one patient as all rows are labeled:  
316868HO_DGE_cine1_ax_px. Note to Suzanne... do not use spaces in R  
variable names.

 > dput(pat1)
structure(list(Time = 0:10, VectorL = c(0, 1.6, 0.4, 0.4, 0.4,
0.4, 0.4, 0.4, 0.3, 0, 0.2), VectorR = c(0, 1.5, 0.3, 0.3, 0.3,
1.6, 1.6, 1.8, 2.5, 2.3, -0.3), VectorA = c(0, 0, -0.3, -0.3,
-0.3, -0.3, -0.3, -0.3, -0.4, -0.3, -0.2), VectorP = c(0, 1.9,
-0.1, -0.1, -0.1, 0.1, 0.1, -0.1, 0.1, 0.4, 0.2)), .Names = c("Time",
"VectorL", "VectorR", "VectorA", "VectorP"), class = "data.frame",  
row.names = c(NA,
-11L))



>
> Figure 1.
>
>
> <image001.gif>
>
>
>
> Suzanne St.Rose (DVM, MSc, PhD)

>
>
> <Data_Three dimensional_01.xls>

David Winsemius, MD
Heritage Laboratories
West Hartford, CT




More information about the R-help mailing list