Clear Filters
Clear Filters

Plotting a linear function to a surface: how interpolate to obtain smooth curves, instead of linear lines?

2 views (last 30 days)
I have a function f(x,y) which I have plotted as a surface (x,y,f(x,y)). The function is linear in x and y, and so the surface is not very smooth. Increasing the "resolution" just messes up the plot by introducing too many lines. Is there a way to interpolate between the points on the surface to second order, to make the surface appear more smooth? Just as a reference you can see the surface here: http://pasteboard.co/wcvNTgPUW.png

Answers (1)

José-Luis
José-Luis on 9 Feb 2017
What are you trying to achieve? Just setting the EdgeColor property to None might make it look smoother.
Also, you can play with the lighting and other surface properties, as per the documentation and other examples.
If you are really interested in some (all) gridlines and want them to look smooth, you could allows plot them individually as splines.
  2 Comments
Anders Brakestad
Anders Brakestad on 9 Feb 2017
Edited: Anders Brakestad on 9 Feb 2017
In the surface, you'll notice that the lines going through the center of the cone are straight. That again makes the "rings" - tracing the function value at constant distance from the center - to be just straight lines between each line from the center. So I'd like to interpolate these rings such that they are smooth. Can I do that with the curve fitting app?
José-Luis
José-Luis on 9 Feb 2017
I don't immediately see how you could do it with the curve fitting app.
Does your surface follow some equation? Do you know the coordinates of the center? If the answer to both question is yes, then you could potentially derive the equations for all the "rings" since you know that they are at a constant distance from the center.
Maybe I am just misunderstanding what you are trying to achieve.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!