繁体   English   中英

在Matlab中更改直方图的轴

[英]Changing the axis of a histogram plot in Matlab

我想模拟代表几何分布的值。 我使用下面的代码完成的绘图似乎可以生成正确的绘图。 但是我希望x轴严重偏离位置,并且我希望x轴编号为1,2,3等,而不是现在收到的10,20,30等。 我还想将Y轴绘制为对数刻度,试图获取代码中给定的'X'曲线。

%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);

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

在此处输入图片说明

用对数刻度绘制条形图非常棘手。 请参阅: 如何使用对数刻度绘制历史记录 ,或使用此方法:

[n, xout] = hist(X,0:max(X));
bar(xout, n, 'barwidth', 1, 'basevalue', 1);
set(gca,'YScale','log')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM