Re: Question about interpolation and ListPlot3D
- To: mathgroup at christensen.cybernetics.net
- Subject: [mg1492] Re: Question about interpolation and ListPlot3D
- From: roth at sunny.mpimf-heidelberg.mpg.de (Arnd Roth)
- Date: Mon, 19 Jun 1995 01:16:10 -0400
- Organization: Max-Planck-Institut fuer Medizinische Forschung
In article <3rn543$acd at news0.cybernetics.net> zwiener at lehman.com (Zvi Wiener) writes: > I have an array representing 3 dimensional points > in a form of their Eucledean coordinates: > arr = {{x1,y1,z1}, ... ,{xN,yN,zN}}; > (they were generated from a very smooth function). > > 1. I wish to generate a 3D plot of this surface (approximately), > but format of ListPlot3D does not permit it, since my points > {xi, yi} do not form a regular grid. > How I can draw the surface? The function TriangularSurfacePlot[] in the package DiscreteMath`ComputationalGeometry` is what you need: In[1]:= <<DiscreteMath`ComputationalGeometry` In[2]:= ?TriangularSurfacePlot TriangularSurfacePlot[{{x1, y1, z1},... ,{xn, yn, zn}}] plots the zi according to the planar Delaunay triangulation established by the {xi, yi}. (...) However you should condition your set of points such that no two points {x1, y1, z1} and {x2, y2, z2} are very very close (compared to the average distance) or even identical. > 2. I would like to find value of this function at another point > {x, y}, the answer obviously depend on the way the function was > interpolated (extrapolated), but I am interested in any way, as > simple as possible. > How to extract the Interpolating Function's value at {x, y} ? You can use the resulting set of triangles (TriangularSurfacePlot returns Graphics3D[{Polygon[{{..., ..., ...}, ..., ...}], ...}] objects) to linearly interpolate your function. However at the moment I do not have a function ready that does this. It should not be too difficult to write one. Sincerely, Arnd Roth Abteilung Zellphysiologie Max-Planck-Institut fuer Medizinische Forschung Postfach 10 38 20, D-69028 Heidelberg, Germany http://sunny.mpimf-heidelberg.mpg.de/people/roth/ArndRoth.html