why im not able plot graph in 1 sec window of 16 sample

2 次查看(过去 30 天)
clc;clear all; close all;
A=1;
x=0:0.1:1;
sample=16;
y=A*sin((2*pi./sample)*x)
figure
plot(x,y)
untitled.jpg
  4 个评论

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2019-8-25
You didn't have anough points to see the sine wave so all you see is a traingle wave. Increase the number of points and use linspace():
numPoints = 50; % Whatever
Amplitude = 1;
t = linspace(0, 1, numPoints);
period = 0.4; % Seconds -- whatever you want;
y = Amplitude * sin((2*pi./period) * t)
plot(t, y, 'bo-', 'LineWidth', 2, 'MarkerSize', 9)
grid on;
xlabel('Time', 'FontSize', 13);
ylabel('Y', 'FontSize', 13);
title('Sine Wave', 'FontSize', 13);
0000 Screenshot.png
  3 个评论
Image Analyst
Image Analyst 2019-8-27
fs (omega) is (2*pi/period). For a 1 second, 1Hz chunk of signal, you'll have one wave of the sine wave. You can pick whatever sampling rate you want. Of course the higher it is, the more accurately you'll draw the signal.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by