# How to plot a smooth graph?

25 views (last 30 days)
donghun lee on 2 Apr 2020
Commented: donghun lee on 2 Apr 2020
clc,clear all
b0 = 0.015;
b1 = 0.015;
b2 = 0.035;
b3 = 0.050;
v = 40; %velocity
L = 2;
w = (2*pi*v)/L; %angular frequency
F = w*(1/(2*pi)); %in Hz
t = linspace(0,10,18);
b = b0 + b1*sin(w*t) + b2*sin(2*w*t)
+b3*sin(3*w*t);
plot(t,b)
Hi, I want to make this graph as being a smooth graph.
Rik on 2 Apr 2020
Although you could resample your function to draw a smooth curve through your data points, that would not accurately describe your function. You can greatly increase the number of points in your t vector to see that you have an enormous amount of aliasing going on here. See this Wikipedia page for more information.

Birdman on 2 Apr 2020
Edited: Birdman on 2 Apr 2020
You need to increase the step size of your t vector:
t = linspace(0,10,100);
Code:
b0 = 0.015;
b1 = 0.015;
b2 = 0.035;
b3 = 0.050;
v = 40; %velocity
L = 2;
w = (2*pi*v)/L; %angular frequency
F = w*(1/(2*pi)); %in Hz
t = linspace(0,10,100);
b = b0 + b1*sin(w*t)+b2*sin(2*w*t)+b3*sin(3*w*t);
plot(t,b)
donghun lee on 2 Apr 2020
Ah!! Thank you soooo much for your help. I got what you mean now! I really appreciate it.
Thank you for your time again Rik!

Walter Roberson on 2 Apr 2020
t = linspace(0,10,18);
Increase the 18 to something larger, such as 50.
donghun lee on 2 Apr 2020
Thank you very much for your comment.

### Categories

Find more on Graphics Performance 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!

Translated by