Plotting two vectors side by side.
28 views (last 30 days)
Show older comments
Robbie McDermott
on 29 Nov 2017
Commented: Star Strider
on 29 Nov 2017
I have two arrays that should plot to give the same (very similar) graphs. My first array, A, is 1 X 601 while my second array, B, is 1 X 1200. I want to re-scale one of these so I can plot them together and look at where they deviate from each other. What is the best way to re-scale them so that the minimums from array A are aligned to the minimums of array B? Or at least the two major minimums are aligned.
Any help would be greatly appreciated, I have been looking for a solution online however this one beats me.
Thanks in advance!
2 Comments
Sammit Jain
on 29 Nov 2017
Can you share some information about the variable you're plotting it against and what is the size for that one?
Accepted Answer
Star Strider
on 29 Nov 2017
Use the linspace function:
A = rand(1, 601); % Create Data
B = rand(1, 1200); % Create Data
Ax = linspace(0, 601, 601); % X-Coordinate Vector For ‘A’
Bx = linspace(0, 601, 1200); % X-Coordinate Vector For ‘B’
figure(1)
subplot(2,1,1)
plot(Ax, A)
grid
subplot(2,1,2)
plot(Bx, B)
grid
Experiment to get the result you want.
2 Comments
Star Strider
on 29 Nov 2017
As always, my pleasure!
I’m an Instrument Rated Private Pilot, and ‘StarStrider’ evolved from that. I’d not thought of the Star Wars or LOTR references before.
If my Answer solves your problem, please Accept it!
More Answers (1)
M
on 29 Nov 2017
I am not sure if it is really hat you want but here is an idea :
a=rand(10,1);
b=rand(15,1);
a and b are two vectors of different length and amplitude.
Using
plot(a);
hold on;
plot(b./max(b).*max(a))
you can plot a and b on the same graph and the maximum of a and b are of the same amplitude.
0 Comments
See Also
Categories
Find more on Line Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!