Plotting doubt: making a curve with points

Hi all, I have the following code:
figure
COPlin=Y./Yg;
plot(AATnew,COPlin)
axis([-10 80 0 1])
I want to make a curve, but Matlab is doing lot of lines between the points. What I want to obtain is a unique curve that put together all the points.
I would be glad if you could help me:)

2 Comments

what's the size of COPlin and AATew?
Not enough information. You could model with a polynomial but we couldn't possibly guess at what order it needs to be. You could model with moving line average curve smoothing but we have no idea the size of these arrays or their features/values to know what would work. You could try interpolation but we again dont know enough about your problem to know what would be best.

Sign in to comment.

 Accepted Answer

I am not exactly certain what the problem is, but if my guess is correct, the sort function may be the solution:
AATnew = randi(90,20,1)-10; % ‘AATnew’ is a (20x1) array
COPlin = rand(20,1); % ‘COPlin’ is a (20x1) array
[Ms,Mi] = sort(AATnew); % Sort ‘AATnew’, keeping indices
figure(1)
plot(AATnew,COPlin,'-*') % Plot Original UNSORTED data
grid
figure(2)
plot(AATnew(Mi),COPlin(Mi),'-*') % Plot SORTED data
grid

More Answers (0)

Categories

Tags

Community Treasure Hunt

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

Start Hunting!