0

以下のコードをプロットしようとしましたが、私のプロットは 0 ではなく 1 から始まります。0 から始まるように変更する方法を教えてください。

> % Generate message signal 

> t1 = -1:0.1*pi:1;

> message_sig = rectpuls(t1);

> L = length(message_sig);

> figure(2)

> stairs(message_sig, 'linewidth',1.5);

> axis([0 L -1 2]);

> title('Message Signal');
4

1 に答える 1

2

これは、matlab ではカウントが 1 から始まるために発生します。プロット関数で 1 つのパラメーター (この場合は「階段」) に言及するだけの場合:

stairs(message_sig)

message_sig 変数はベクトル ('say [0 0 1 1 1 0 0]') であるため、プロット関数は最初の点を 0 と見なし、最初の点 (X 軸上) は 1 になります。

実際には、デフォルトでは次のようなことをしています。

stairs([1 2 3 4 5 6 7],[0 0 1 1 1 0 0])

1 つの解決策は次のとおりです。

stairs(0:length(message_sig)-1,message_sig)  
于 2013-07-14T08:19:46.160 に答える