【问题标题】:matlab normalized histogrammatlab归一化直方图
【发布时间】:2019-05-11 19:59:36
【问题描述】:

您好,我正在尝试为不同时间 j 创建变量 Wkinet 的直方图(它是一些粒子的能量分布如何随时间变化)但我想 1)对于每个时间步长不考虑零值 2)作为结果,在一个图表中获取每个时间值的所有 histfit,但仅拟合而不是条 3)我也希望它在 y 轴上标准化

 nbins=100;
for j=1:ntM

 idxToKeep   = Wkinet(:,j ) ~= 0;
   Wkinet2     = Wkinet(idxToKeep,:);
   y=Wkinet2(:,j).*erg2eV;
  histfit(y,nbins)
  hold on
    delete(h(2))% deletes histogram
     end
      hold off
   end

【问题讨论】:

  • edit您的问题包括您当前代码的问题(错误结果、错误消息等),并包括输入数据的简化(较短)版本。见minimal reproducible example

标签: matlab histogram


【解决方案1】:
        erg2eV = 6.2415e11;
        ntM=500;
          myTolerance=1e-15; % in erg units.
        nbins=1000;
    for j=1:ntM/10:ntM
        hold on
     myFit = fitdist((Wkinet_eV(Wkinet_eV(:,j)>myTolerance, j) ), 'Normal');
         maxEv = max(Wkinet_eV(Wkinet_eV(:,j)>myTolerance, j)); 
         minEv = min(Wkinet_eV(Wkinet_eV(:,j)>myTolerance, j)); %also

            myX   = minEv: (maxEv-minEv)/nbins: maxEv; 
            myY   = pdf(myFit, myX);
            loglog((myX),( myY)); %maybe just plot or %plot(log10(myX),myY)
                  ylim([10^-13,1])
         pause;
   end

【讨论】:

    猜你喜欢
    • 2014-06-19
    • 1970-01-01
    • 2013-06-20
    • 2015-01-15
    • 2011-07-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多