Plotting doubt: making a curve with points

2 views (last 30 days)
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
Michael Haderlein
Michael Haderlein on 22 Aug 2014
what's the size of COPlin and AATew?
Andrew Reibold
Andrew Reibold on 22 Aug 2014
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

Star Strider
Star Strider on 22 Aug 2014
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

Find more on Discrete Data Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!