SphericalPlot3D with List: Create 3D Plots from Point Data

  • Thread starter Thread starter sukharef
  • Start date Start date
  • Tags Tags
    List
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
5 replies · 3K views
sukharef
Messages
54
Reaction score
0
Hello.
SphericalPlot3D can build 3d plot only if arguments are : function (theta,phi) and theta's and phi's ranges.
Is there an opportunity to use SphericalPlot3D or smth like that, if i have a list of points, {z,theta,phi}?
Thanks!
 
Physics news on Phys.org
DaleSpam said:
Just interpolate your list to get a function, then use SphericalPlot3D as normal.

data = {
{4.27126*10^-2, 0.05, 0.05}, {4.23865*10^-2, 0.05, 0.1},
{4.18468*10^-2, 0.05, 0.15}...
};

func = Interpolation[data];

SphericalPlot3D[ func[x, y], {x, 0, Pi}, {y, 0, 2 Pi}, PlotPoints -> 100, PlotRange -> Full]

An error is "Interpolation::indim: The coordinates do not lie on a structured \
tensor product grid. >>"
 
DaleSpam said:
Did you read the online help for Interpolation and Interpolation::indim? How do they say the data must be structured?

i did.

here is two results: 1) ListPlot3D 2) the same plot but after interpolation of list.

[PLAIN]http://i038.radikal.ru/1108/95/8863f173203b.jpg

ListPlot3D[data, PlotRange -> All]
func = Interpolation[data];
func[3.7, 1.6]; <- it works great
Plot3D[func[x, y], {x, 0, Pi/2}, {y, 0, 2 Pi}, PlotRange -> All]
 
Last edited by a moderator:
Looks like the data is structured correctly for ListPlot3D, but not for Interpolation. Note that interpolation requires a different input than ListPlot3D. Also, note that you will better able to see problems by specifying the same plot range for both. That will help you distinguish between format errors and interpolation errors. It looks like a format error to me, but due to the scale it is not possible to rule out interpolation errors also.
 
Last edited: