0

我想x=(a^n)*u(n)在matlab中绘图。这是代码: u(n)这里表示单位阶跃函数。

clc;
clear all;
close all;
a = input('Enter variable:');
n=[-7:1:7];
for i=1:size(n,2)
    if(n(i) > 1)
       x(i)=a.^n(i);
    else
        x(i)=0;
    end
end
subplot(2,1,1);
plot(n(i),x(i));
title('function x(n)');
xlabel('n value');
ylabel('x value');

当我执行代码时,它没有显示所需的输出。请帮忙。

4

1 回答 1

3

它只绘制一个数据点:

plot(n(i),x(i));

将其替换为

plot(n,x);

如您所见,这输入了整个向量nx而不仅仅是第ith 个元素x(i)n(i)

于 2012-08-12T12:38:41.150 回答