Plotting matrices that don't have the same size

16 vues (au cours des 30 derniers jours)
Samy Ben Thabet
Samy Ben Thabet le 29 Nov 2018
Modifié(e) : Akira Agata le 30 Nov 2018
I am trying to plot two matrices it doesn't work.
matrix_1 is a 181x1 matrix with different values, I am trying to plot these values and also get a line fitted on the same plot, I tried polyfit as well but it doesn't work.
Message diplayed:
"Error using plot
Vectors must be the same length."
  3 commentaires
Samy Ben Thabet
Samy Ben Thabet le 29 Nov 2018
Oh right my bad. I guess I made a mistake somewhere in my code I will try to fix that.
Thank you!

Connectez-vous pour commenter.

Réponses (1)

Ken Atwell
Ken Atwell le 30 Nov 2018
When calling plot, the length of the x,y pairs must be equal. Here is an example of a plot of x^2 with noise added, then then a polyfit to that data:
f=polyfit(x, y, 2); % Returns coefficients, not y values directly
fy = f(1).*x.^2 + f(2).*x + f(3);
  1 commentaire
Akira Agata
Akira Agata le 30 Nov 2018
Modifié(e) : Akira Agata le 30 Nov 2018
If these two matrices are not the same size but matrix_1 is a sampled data from x = 1941 to 2010 with some fixed sampling frequency, adjusting length of x with linspace function would be possible solution. Here is an example.
x = 1941:2010;
y = matrix_1;
xInterp = linspace(min(x),max(x),numel(y));

Connectez-vous pour commenter.


En savoir plus sur Line 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