How do I plot Sinusoidal wave over a circle in Matlab?
19 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Akzeptierte Antwort
Arthur Reis
am 22 Feb. 2022
I'm not sure if I 100% understood your question, but here it is
t = 0:0.01:2*pi; %define interval
x = cos(t);
y = sin(t);
figure;
plot(x,y); %normal circle
%%
f = 10; %define modulation frequency
A = .2; % modulation amplitude
R = A*cos(f*t); %
x = cos(t) + R;
y = sin(t) + R;
figure;
plot(x,y); %similar to your example
%%
x = cos(t).*(1 + R);
y = sin(t).*(1 + R);
figure;
plot(x,y); %modulating the radius
7 Kommentare
Arthur Reis
am 7 Mär. 2022
Hello,
you'll only need to change the definition of the 't'. You can use linspace to get an linearly spaced array with expecific number of points (120 in this case). So:
tp = linspace(0,2*pi,120); %new array
xp = cos(tp);
yp = sin(tp);
f = 10; %define modulation frequency
A = .2; % modulation amplitude
Rp = A*cos(f*tp); %
zp = Rp;
figure;
scatter3(xp,yp,zp);
Their coordinates are xp, yp, zp.
Does this solve your problem?
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu ASK finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!