1

10000 回のシミュレーションを作成しましたが、5000 ~ 5200 回のシミュレーションの一部を表示したいと考えています。以下のコードで表示できますが、x 軸は 0-250 と表示されます。X 軸に 5000 ~ 5200 の正確な数字を表示したい。また、軸が何らかの理由で 250 まで実行されるため、図の最後に小さなギャップがあるようです。x 軸が正確なラベルを示し、最後にギャップがない状態で、この設定時間の図を表示したいだけです。

ありがとう

N=10000;%Number of simulation
P=0.02;
Q = zeros(N,1); %current value of queue
X=zeros(N,1);%simulation data
Ci=0;
L=0.9;
Bu=zeros(N,1);
Bs=30;
Bd1=50;
Bd2=270;
Ti=0;
for Ti=2:N
U=rand(1);
a=log10(U);
b=log10(1-P);
c=(a/b);
d=1+c;   
X(Ti)=round(d);
Ci=Ci+1;
if X(Ti)< (L)*(Bs)
      Bu(Ti)=Bs;
 else  if X(Ti) < (L)*(Bs+Bd1)
    Bu(Ti)=Bs+Bd1;
 else 
    Bu(Ti)=Bs+Bd1+Bd2;    
    end 
end
Ti=Ti+1;
end
plot(X(5000:5200,1),'r');
set (gca,'ylim',[0 400]);
hold on;
plot(Bu(5000:5200,1),'b');
set (gca,'ylim',[0 400]);
hold off
4

1 に答える 1

0

Plot は 2 つの入力を想定しています。1 つ目は横軸を表し、2 つ目は縦軸を表します。2 つの入力を指定しない場合は、単一の入力の長さ (この場合、長さは 5200-5000 = 200) を計算し、1 からその長さ (この場合は 1:200) をそのまま使用します。横軸変数の値です。

コマンドを発行したいと思います:

plot(5000:5200, X(5000:5200,1), 'r')

多くの場合、Matlab はプロット軸を調整してデフォルト ビューを改善します。そのため、デフォルトのプロット規則のおかげで、インデックス 250 まで軸が表示されている可能性があります。必要に応じて同様に使用set(gca, 'xlim', [5000 5200])できます。

于 2012-04-12T05:23:49.937 に答える