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

1 Ansicht (letzte 30 Tage)
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 Kommentare
dpb
dpb am 25 Aug. 2019
x=linspace(0,1,16);
y=A*sin(2*pi*x);
plot(x,y)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Image Analyst
Image Analyst am 25 Aug. 2019
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 Kommentare
KALYAN ACHARJYA
KALYAN ACHARJYA am 27 Aug. 2019
Change the period value, and see the results.
Image Analyst
Image Analyst am 27 Aug. 2019
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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by