Says "error using plot, vectors must be the same length"

3 views (last 30 days)
x1=linspace(0,8.*pi,50)
y1=exp(-0.1.*x1).*cos(5.*x1)
xx1=linspace(0,8.*pi,1000)
x2=linspace(-1,1)
yy1=exp(-0.1.*x2).*cos(5.*x2)
x3=linspace(-4,4)
y2=sinh(5.*x3)
y3=0.5+2.*cos(0.5.*pi.*x3)/pi-2.*cos(1.5.*pi.*x3)/(3.*pi)+2.*cos(2.5.*pi.*x3)/(5.*pi)
x4=linspace(-4,4)
y4=y3-2.*cos(3.5.*pi.*x4)/(7.*pi)+2.*cos(4.5.*pi.*x4)/(9.*pi)
plot(x1,y1)
plot(xx1,yy1)
plot(x2,y2)
plot(x3,y3)
plot(x4,y4)

Accepted Answer

Scott MacKenzie
Scott MacKenzie on 20 Oct 2021
Edited: Scott MacKenzie on 20 Oct 2021
Just a simple mistake. Change the 3rd line to
xx1=linspace(0,8.*pi,100);
Or, for higher resolution, change all the linspace functions to 1000 points:
x1=linspace(0,8.*pi,50);
y1=exp(-0.1.*x1).*cos(5.*x1);
xx1=linspace(0,8.*pi,1000) ;
x2=linspace(-1,1,1000);
yy1=exp(-0.1.*x2).*cos(5.*x2);
x3=linspace(-4,4,1000);
y2=sinh(5.*x3);
y3=0.5+2.*cos(0.5.*pi.*x3)/pi-2.*cos(1.5.*pi.*x3)/(3.*pi)+2.*cos(2.5.*pi.*x3)/(5.*pi);
x4=linspace(-4,4,1000);
y4=y3-2.*cos(3.5.*pi.*x4)/(7.*pi)+2.*cos(4.5.*pi.*x4)/(9.*pi);
plot(x1,y1)
plot(xx1,yy1)
plot(x2,y2)
plot(x3,y3)
plot(x4,y4)

More Answers (0)

Categories

Find more on Line Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!