Is there a way to extracted histogram data into a matrix instead of graph?

8 views (last 30 days)
Soma
Soma on 22 Nov 2019
Edited: Soma on 22 Nov 2019
Hello,
Is there a way to extract histogram data into a matrix instead of a graph?
for mer= start:Add:N_Mer
FileName_1 = ['Info_',num2str(N_Mer),'.mat'];
disp([FileName_1,' Running'])
M=load(FileName_1);
all_rows=cell2mat(struct2cell(M));
R_sqr{N_Mer}=all_rows(1,:);
FileName=(['hist_R2',num2str(N_Mer)]);
hist_R2{N_Mer}=histogram(R_sqr{N_Mer});
legend
hold on
end

Accepted Answer

Bryan
Bryan on 22 Nov 2019
Edited: Bryan on 22 Nov 2019
If you want to make a plot and also extract the values
% some data
foo = randn(10000,1);
% make a histogram named h
h = histogram(foo);
% get the values of the histogram
binedges = h.BinEdges;
binwidth = h.BinWidth;
bincounts = h.Values;
Alternatively, if you don't want a plot, but just want to extract histogram information
% some data
foo = randn(10000,1);
% extract histogram data
[bincounts, binedges] = histcounts(foo);
  7 Comments
Soma
Soma on 22 Nov 2019
Check this code with the below file please.
clc % To clear the screen
clear % To clear the Memory
t = tic;
time = [];
start = 8;
Add = 1;
Num_Mon = 8; % Total number of steps
for Num_monomers= start:Add:Num_Mon
FileName_1 = ['Info_',num2str(Num_monomers),'.mat'];
disp([FileName_1,' Running'])
M=load(FileName_1);
all_rows=cell2mat(struct2cell(M));
R_sqr=all_rows(1,:);
FileName=(['hist_R2',num2str(Num_monomers)]);
[bincounts, binedges] = histcounts(R_sqr);
bincentres = binedges(1:end-1)+diff(binedges)/2;
FileName = (bincounts);
FileName=histogram(R_sqr);
legend
hold on
end

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!