MATLAB Answers

Matlab does not plot data which are mirrored data

23 views (last 30 days)
I G
I G on 27 Feb 2021
Edited: Cris LaPierre on 27 Feb 2021
I have variable r with dimension [1x2002] and values
r = [1 0.9 0.8 0.7 . . . 0.7 0.8 0.9 1]
and variable u0 with dimension [1x2002] and values
u0 = [0 0.0001 0.0002 . . . 0.0002 0.0001 0]
When I plot these data as plot(r, u0) I got only half of these values, but I need all values from my variables (whole velocity profile u0, not just half velocity profile as I got), how I can do that?

Answers (2)

Cris LaPierre
Cris LaPierre on 27 Feb 2021
Edited: Cris LaPierre on 27 Feb 2021
It's plotting it all. It just appears that your data overlaps itself.
Compare these examples
r=abs(-1:0.1:1);
u0=-abs(-1:0.1:1) + 1;
plot(r,u0)
% to this
r=-1:0.1:1;
u0=-abs(-1:0.1:1) + 1;
plot(r,u0)
You can check this by plotting without specifying x values. This will plot the y values using their index number as for x. This will allow you to see the values of every u0 value.
plot(u0)
  2 Comments
Cris LaPierre
Cris LaPierre on 27 Feb 2021
That would confuse me, but your xticklabels do not have to be the same as your xtick locations. I might do something like this to put it on the same plot.
r=-1:0.1:1;
u0=-abs(-1:0.1:1) + 1;
plot(r,u0)
xticklabels(abs(str2double(xticklabels)))
To use the approach that uses the index number for x, you could do something like this.
plot(u0)
xlim([1,length(u0)])
xticks(linspace(1,length(u0),5))
xticklabels(abs(linspace(-1,1,5)))

Sign in to comment.


Jan
Jan on 27 Feb 2021
If the 2nd half of the data equals the 1st half in different order, you do plot all data, but the line overlap. See:
r = [1 0.9 0.8 0.7 0.7 0.8 0.9 1]
u0 = [0 0.0001 0.0002 0.003 0.003 0.0002 0.0001 0]
figure
plot(r, u0)
figure
plot(r(1:4), u0(1:4), 'r+')
hold on
plot(r(5:8), u0(5:8), 'bo')
  1 Comment
I G
I G on 27 Feb 2021
How can I plot it as in mirror, so that they not overlap each other?

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!