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

2 次查看(过去 30 天)
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

回答(1 个)

José-Luis
José-Luis 2017-2-9
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 个评论
Anders Brakestad
Anders Brakestad 2017-2-9
编辑:Anders Brakestad 2017-2-9
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 2017-2-9
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.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Smoothing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by