[R] 3-D response surface using wireframe()

David Winsemius dwinsemius at comcast.net
Fri Apr 9 03:18:53 CEST 2010


On Apr 8, 2010, at 8:29 PM, array chip wrote:

> David,
>
> Thansk again! Sarkar's Lattice book is excellent source for lattice.  
> Here is a link for all the figures and codes used in the book. You  
> example is figure 13.7.
>
> http://lmdvr.r-forge.r-project.org/figures/figures.html
>
> I got the first point! For the second point below, Figure 13.7 an  
> excellent example for projecting the 3D dataset onto the bounding  
> surface, but it's not what I meant. I think I didn't explain what I  
> wanted clearly. What I really wanted is a simple straight grid lines  
> across the tick marks for 3 bounding surfaces of the box, not a  
> projection of the 3D dataset. Hope I have explained clearly this time.

You have not convinced me that I misunderstood what you wanted. I  
figured that you would use something other than transforming the data  
driven contour lines. But if you want to use a lattice function there  
is a panel.grid, but I still suspect it will need to be 3dto3d  
transformed onto one of the "lim" extremes.

>
> Many thanks
>
> John
>
>
> --- On Thu, 4/8/10, David Winsemius <dwinsemius at comcast.net> wrote:
>
>> From: David Winsemius <dwinsemius at comcast.net>
>> Subject: Re: [R] 3-D response surface using wireframe()
>> To: "array chip" <arrayprofile at yahoo.com>
>> Cc: r-help at r-project.org
>> Date: Thursday, April 8, 2010, 3:46 PM
>>
>> On Apr 8, 2010, at 3:13 PM, array chip wrote:
>>
>>> David,
>>>
>>> That does the job! Thanks a lot.
>>>
>>> Now I am very very close to what I want. Still have a
>> couple of
>>> small adjustments to make.
>>>
>>> 1. I use drape=TRUE to draw grid and color on the
>> surface, is there
>>> a parameter to adjust the density of the grid?
>>
>> If you mean the spacing between points, then isn't that
>> determined by
>> the density of the gridded data arguments before they get
>> to the
>> wireframe function?
>>
>>>
>>> 2. Is there a way that I can add grid to the axis
>> surface? I mean
>>> the sides of the box, between x & y, between x
>> & z, and between y &
>>> z? And I need to choose which 3 side of the box that I
>> want to add
>>> grid?
>>
>> See Figure 13.7 of Sarkar's Lattice text for an example of
>> a panel
>> function that collapses the contourLines of the volcano
>> dataset at the
>> top bounding surface by using ltransform3dto3d with a z
>> argument of
>> zlim.scaled[2]. I would think that a grid could be 3dto3d
>> transformed
>> similarly.
>>
>> -- 
>> David.
>>
>>>
>>> Thank you all for the help. It's fun to play with
>> wireframe
>>>
>>> John
>>>
>>> --- On Wed, 4/7/10, David Winsemius <dwinsemius at comcast.net>
>> wrote:
>>>
>>>> From: David Winsemius <dwinsemius at comcast.net>
>>>> Subject: Re: [R] 3-D response surface using
>> wireframe()
>>>> To: "array chip" <arrayprofile at yahoo.com>
>>>> Cc: r-help at r-project.org
>>>> Date: Wednesday, April 7, 2010, 9:22 PM
>>>>
>>>> On Apr 7, 2010, at 8:58 PM, array chip wrote:
>>>>
>>>>> With the help document, i finally find a set
>> of values
>>>> of for x=,y=
>>>>> and z= in "screen" argument that gives me the
>> correct
>>>> rotation of
>>>>> the plot. But now it plots x and y axis (tick
>> marks
>>>> and labels)
>>>>> along the top of the plot. Is there one way to
>> plot x
>>>> and y axis on
>>>>> the bottom of the plot?
>>>>
>>>> Look at the scpos argument to specify the scales
>> location.
>>>> (Still
>>>> lacking an example and therrefore doing this from
>> memory.)
>>>>
>>>> -- 
>>>> David
>>>>>
>>>>> Thanks
>>>>>
>>>>> John
>>>>>
>>>>> --- On Wed, 4/7/10, David Winsemius <dwinsemius at comcast.net>
>>>> wrote:
>>>>>
>>>>>> From: David Winsemius <dwinsemius at comcast.net>
>>>>>> Subject: Re: [R] 3-D response surface
>> using
>>>> wireframe()
>>>>>> To: "array chip" <arrayprofile at yahoo.com>
>>>>>> Cc: r-help at r-project.org
>>>>>> Date: Wednesday, April 7, 2010, 8:07 AM
>>>>>> A search with the following
>>>>>> strategy:
>>>>>>
>>>>>> RSiteSearch("lattice wireframe rotate
>> axes")
>>>>>>
>>>>>> Followed by adding requests to search
>> earlier
>>>> years'
>>>>>> archives produced this link which has a
>> further
>>>> link to a
>>>>>> document that answers most of your
>> questions, at
>>>> least the
>>>>>> ones that are comprehensible:
>>>>>>
>>>>>> http://tolstoy.newcastle.edu.au/R/e2/help/07/03/12534.html
>>>>>>
>>>>>> --David.
>>>>>>
>>>>>> On Apr 6, 2010, at 7:12 PM, array chip
>> wrote:
>>>>>>
>>>>>>> I am working on plotting a response
>> surface
>>>> using
>>>>>> wireframe(). The default style/orientation
>> is
>>>>>>>
>>>>>>>           z
>>>>>>>           |
>>>>>>>           |
>>>>>>> y       |
>>>>>>> \       |
>>>>>>> \      |
>>>>>>>     \
>>    |
>>>>>>>      \
>> |
>>>>>>>
>> \   |
>>>>>>>        \
>> |
>>>>>>>         \ |
>>>>>>>
>>>> \|________________x
>>>>>>>           0
>>>>>>>
>>>>>>> Now what I want the orientation of
>> axes is:
>>>>>>>
>>>>>>>
>>>>>>     z
>>>>>>>
>>>>>>     |
>>>>>>>
>>>>>>     |
>>>>>>>
>>>>>>     |
>>>>>>>
>>>>>>     |
>>>>>>>
>>>>>>     |
>>>>>>>
>>>>>>      /0\
>>>>>>>
>>>>>> /   \
>>>>>>>
>>>>>>      /
>>    \
>>>>>>>
>>>>>> /       \
>>>>>>>
>>>>>>      /
>>>>     \
>>>>>>>
>>>>     /
>>>>>>
>>    \
>>>>>>>
>>    y
>>>>>>
>>    z
>>>>>>
>>>>>> Two z axes? How interesting!
>>>>>>
>>>>>>>
>>>>>>> My understanding is that the
>>>> screen=list(z=,y=,x=)
>>>>>> control the orientation of axes, but even
>> after
>>>> reading the
>>>>>> help page of screen argument, I still
>> don't
>>>> understand how
>>>>>> to use it.
>>>>>>>
>>>>>>> screen: "A list determining the
>> sequence of
>>>> rotations
>>>>>> to be applied to the data before being
>> plotted.
>>>> The initial
>>>>>> position starts with the viewing point
>> along the
>>>> positive
>>>>>> z-axis, and the x and y axes in the usual
>>>> position. Each
>>>>>> component of the list should be named one
>> of "x",
>>>> "y" or "z"
>>>>>> (repititions are allowed), with their
>> values
>>>> indicating the
>>>>>> amount of rotation about that axis in
>> degrees."
>>>>>>>
>>>>>>> Can anyone explain to me how the
>> screen
>>>> argument
>>>>>> works? And what values (x,y,z) I should
>> choose for
>>>> the
>>>>>> orientation that I want?
>>>>>>>
>>>>>>> Another question is wireframe(0 will
>> draw all
>>>> 8 edges
>>>>>> of the cubic by default, is there anyway
>> that I
>>>> can control
>>>>>> what edges I can draw, what I can hide?
>>>>>>>
>>>>>>> thanks very much!
>>>>>>>
>>>>>>> John
>>>>>>>
>>>>>>>
>>>> ______________________________________________
>>>>>>> R-help at r-project.org
>>>>>> mailing list
>>>>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>>>>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>>>>>>> and provide commented, minimal,
>>>> self-contained,
>>>>>> reproducible code.
>>>>>>
>>>>>> David Winsemius, MD
>>>>>> West Hartford, CT
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> David Winsemius, MD
>>>> West Hartford, CT
>>>>
>>>>
>>>
>>>
>>>
>>
>> David Winsemius, MD
>> West Hartford, CT
>>
>>
>
>
>
>

David Winsemius, MD
West Hartford, CT



More information about the R-help mailing list