Effacer les filtres
Effacer les filtres

Plotting two vectors side by side.

12 vues (au cours des 30 derniers jours)
Robbie McDermott
Robbie McDermott le 29 Nov 2017
Commenté : Star Strider le 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 commentaires
Sammit Jain
Sammit Jain le 29 Nov 2017
Can you share some information about the variable you're plotting it against and what is the size for that one?
Robbie McDermott
Robbie McDermott le 29 Nov 2017
Hi Sammit,
I haven't plotted at against anything yet. I just loaded up the data file and used the plot function to look at it.

Connectez-vous pour commenter.

Réponse acceptée

Star Strider
Star Strider le 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 commentaires
Robbie McDermott
Robbie McDermott le 29 Nov 2017
Aww StarStrider!! Thats, great, I had seen this method posted else where but I couldn't see how it would help! Your explanation is much better! Thank you, that is a great help, my hat off to you!
p.s. cracking name too... star wars or LOTR reference?
Star Strider
Star Strider le 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!

Connectez-vous pour commenter.

Plus de réponses (1)

M
M le 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.

Catégories

En savoir plus sur 2-D and 3-D Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by