;*********************************************************************** ; This program creates the frequency distribution ;*********************************************************************** pro hist_generic,data,start_bin,end_bin,dbin,bins,data_freq,data_counts ;*********************************************************************** ; Bin the data ;*********************************************************************** ;start_bin=0 ;end_bin=25 ;************************************************************************ ; Set up the bins ;************************************************************************ bins=start_bin ;dbin=0.1 ;half bin width ;end_bin while bins[n_elements(bins)-1] lt end_bin $ do bins=[bins,bins[n_elements(bins)-1]+(2.*dbin)] ;************************************************************************ ; Set up the 1D histogram arrays ;************************************************************************ data_counts=make_array(n_elements(bins),/float,value=0) ;************************************************************************ ; Build the 1D histogram for vvel ;************************************************************************ for j=0,n_elements(bins)-1 do begin result=where(data ge bins[j]-dbin and $ data lt bins[j]+dbin,count) ;result=where(data gt bins[j]-dbin and $ ; data le bins[j]+dbin,count) data_counts[j]=count ;print,bins[j]-dbin,bins[j]+dbin,count ;if count gt 0 then print,data[result] endfor ;end of loop through vvel bins ; Now calculate a frequency array data_freq=make_array(n_elements(bins),/float,value=0) if total(data_counts) gt 0 then $ data_freq=float(data_counts)/float(total(data_counts)) end