2011-12-05 76 views
1

幾何分布を表す値をシミュレートしたいと思います。私が下のコードを使って行ったプロットは正しいプロットを生成するようです。しかし、私はx軸の位置が間違っていて、x軸の番号を1,2,3などにしたいのですが、現在受け取っている10,20,30などの代わりに番号を付けます。私はまた、Y軸を対数目盛としてプロットしたいと思います。私は、コードに与えられた 'X'のプロットを取得しようとしています。対数目盛付きバーグラフをプロットMatlabのヒストグラムプロットの軸を変更する

%Geometric Distribution% 
N=100;%Number of simulation 
P=0.1; 
X=zeros(N,1);%simulation data 
Ti=0;%Counter 

for Ti=2:N 
    U=rand(1); 
    a=log10(U); 
    b=log10(1-P); 
    c=(a/b); 
    d=1+round(c); 
    X(Ti)=d; 
    Ti=Ti+1; 
end 

t = 0:N-1; 
hist(X); 

答えて

2

hist(X,min(X):max(X))

enter image description here

+0

How to plot hist with log scaleを、またはこれを使用する:参照してください。しかし、私がこれを使うと形はひどく間違っています。私はヒストグラムをアップロードする方法を理解することができません。そうしないと、私は –

+0

ができる形を表示できます:hist(X、n)、nはビンの数になります。だから、あなたが望むものを得るためにnを調整することができます。 – Oli

1

はトリッキーです。私は私が望む形状を得るなど、私は10,20,30として、x軸を使用する場合

[n, xout] = hist(X,0:max(X)); 
bar(xout, n, 'barwidth', 1, 'basevalue', 1); 
set(gca,'YScale','log') 
関連する問題