MATLAB Answers

Unusual arrangement of plot

4 views (last 30 days)
Red line is plotted by matlab but it is unusal and expected to be blue line.
Any idea why this happens?
plot(celltracker_group_prolif.radius(celltracker_group_prolif.time==22),celltracker_group_prolif.perhex(celltracker_group_prolif.time==22),'-rs','LineWidth',2,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5)

  0 Comments

Sign in to comment.

Accepted Answer

Jon
Jon on 7 Oct 2019
Edited: Jon on 7 Oct 2019
I assume when you say "Red line is plotted by matlab but it is unusal and expected to be blue line" you mean that you expect the red line to be close to the blue line.
It looks like your data is probably not sorted in order of increasing x value.
You can use the sort command to sort your data. So if your values were in a vector y, and your x values were in a vector x you could sort them according to their x values using
[xsort,isrt] = sort(x)
ysort = y(isrt)

  0 Comments

Sign in to comment.

More Answers (1)

Bjorn Gustavsson
Bjorn Gustavsson on 7 Oct 2019
Seems like you want the plot done with the radii sorted? (plot plots what you feed it, if you have the x-variable unsorted the plot will be with the x-array as given...). Maybe something like:
x4p = celltracker_group_prolif.radius(celltracker_group_prolif.time==22);
y4p = celltracker_group_prolif.perhex(celltracker_group_prolif.time==22);
% Check the order of x4p!
[~,is] = sort(x4p);
plot(x4p(is),y4p(is),'-rs','linewidth',2,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5)
HTH

  0 Comments

Sign in to comment.