Creating Bins in a Histogram
2 次查看(过去 30 天)
显示 更早的评论
I have a data set with the first column being the years and the second column being the distances. I need to create a histogram that bins how many of these distances occur during the same year, and then occurring every 10 years. (For example, 1880-1890 0, 1890-1900 1, 1900-1910 1).
I have attached the text file.
0 个评论
采纳的回答
Star Strider
2015-10-12
You have one year recorded for each distance, so do the histogram on the years. This doesn’t account for the distances (I’m not exactly certain how to fit them into a histogram by year in the absence of plot3, if you want to somehow include them), but will plot the histogram of the discoveries by year and decade.
The code:
fidi = fopen('jgillis16 oo20copy.txt', 'rt');
Dc = textscan(fidi, '%f%f', 'CollectOutput',1, 'TreatAsEmpty','~');
fclose(fidi);
D = cell2mat(Dc);
years = D(:,1);
distances = D(:,2);
yrbin = [min(years):max(years)]-0.5;
dcbin = 10*[floor(min(years)/10) : 1 : floor(max(years)/10)]+5;
figure(1)
subplot(2,1,1)
hist(years, yrbin)
grid
subplot(2,1,2)
hist(years, dcbin)
grid
0 个评论
更多回答(1 个)
Image Analyst
2015-10-12
The data you posted really doesn't have enough observations per decade to make a good histogram. There are just a handful per decade and usually only one or 2 per year. Nonetheless, you can use hist3() in the Stats toolbox to give counts per decade, and then per year in each decade.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Histograms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!