Path: news.mathworks.com!newsfeed-00.mathworks.com!newsfeed2.dallas1.level3.net!news.level3.com!postnews.google.com!g14g2000cwa.googlegroups.com!not-for-mail
From: heiko_marx@hotmail.com
Newsgroups: comp.soft-sys.matlab
Subject: Re: Help with 2d or 3d data... (plane fit/lsplane.m)
Date: 21 Jun 2005 07:35:58 -0700
Organization: http://groups.google.com
Lines: 41
Message-ID: <1119364558.193060.173380@g14g2000cwa.googlegroups.com>
References: <d98d4i$7ao$1@news.ks.uiuc.edu>
NNTP-Posting-Host: 84.185.192.62
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
X-Trace: posting.google.com 1119364564 11522 127.0.0.1 (21 Jun 2005 14:36:04 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Tue, 21 Jun 2005 14:36:04 +0000 (UTC)
User-Agent: G2/0.2
Complaints-To: groups-abuse@google.com
Injection-Info: g14g2000cwa.googlegroups.com; posting-host=84.185.192.62;
Xref: news.mathworks.com comp.soft-sys.matlab:285888


Allen schrieb:
> Hi everyone,
>
> I'm extremely new to matlab, so I'm very sorry if I'm missing some
> simple things... I've been trying to learn as much as possible... I need
> some help thinking about this current problem.
>
> I have height data taken from an AFM (atomic force microscope), each z
> height (nanometers) is taken at some x,y position (also in nanometers).
>   Currently I have imported the z array (256x256 double), and have also
> created an x and y array(s) corresponding to the positions along x and y
> of each point.  The data can be specified in 3d, in that it has a
> position in x, y, and z.  I would like to plane-fit the data with say,
> the lsplane.m file of I.M. Smith (included below for those who don't
> have it from the repository).  [or other plane-fitting routine you may
> suggest]
>
> I have some confusion about my data and the array required for
> lsplane.m.  Here's the input array information (quoting):  "Array [x y
> z] where x=vector of x-coords, y=vector of y-coords, z=vector of z
> coords, Dimension mx3."
>
> Now, how are my X, Y, Z matrices related to the array Lsplane.m is
> requesting?  I can't seem to merge the data together into a 3d array.
> [in a spread sheet, the x,y would simply be the index for the z data...
> x's size of course is 1x256 (so is Y, but I can transpose it), and Z's
> size is 256x256.

Hi.

I assume the routine takes only triples of x,y,z data (actual space
coordinates). So if your z data is 2d, just generate appropriate x and
y array that are the same size as z. Look for meshgrid in the help.
Then you have as much x and y indices as you need for your z data.
Meshgrid simply repeats the x and y values as often as needed for the z
data. When reshaping x,y, and z to 256*256 x 1 vectors the routine
might work.

Hope I understood your problem,
Heiko