MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today
Asked by pxg882 on 21 Feb 2013

Hi, I'm plotting the following set of data

x = [0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1.0]; y = [1.7764 1.4849 1.3076 1.1857 1.0957 1.0257 0.9698 0.9235 0.8845]; cs = spline(x,y); xx = linspace(0.6,1,401); yy = ppval(cs,xx); plot(x,y,'o',xx,yy,'-'); axis([0.6 1 0.8 1.8]) xlabel('n') ylabel('$-H(\eta_{\infty})$','interpreter','latex') legend('data','spline')

However, I know that for x=0.5 the data set tends asymptotically towards the y-axis. Is there a way I can add this into the plot whilst preserving the 'shape' of the interpolating spline? I've tried approximating this by adding in the point x=0.5 with say y=100, however the curve is not longer smooth.

Any help would be great.

Thanks.

*No products are associated with this question.*

Answer by José-Luis on 21 Feb 2013

Let Matlab decide how to make your plot look smooth:

myFun = @(x) ppval(cs,x) fplot(myFun,[0.5 1])

pxg882 on 21 Feb 2013

This does produce a smooth plot but it doesn't encapsulate the asymptotic behaviour of the function as x tends towards 0.5. Is there a way to force Matlab into taking behaviour into account?

## 0 Comments