Histrogram/bar chart plot problem
2 views (last 30 days)
Show older comments
i'm trying to plot a Histrogram with a data I got from working
%----------------------------------------------------------------
%
%--------------------------------------------------------------
filename = 'Mass_change_forMatlabNew.xlsx';
readdata = xlsread(filename);
X1 = (15) ;
X2 = (30) ;
X3 = (45) ;
Y1 = readdata(:,2) ;
Y2 = readdata(:,4) ;
Y3 = readdata(:,6) ;
%-------------------------------------------------------------------
%
%-----------------------------------------------------------------
Hist(X1,Y1)
Hist(X2,Y2)
Hist(X3,Y3)
data I have from lab
800 Celcius 700 Celcius 600Celcius
15percentage Carbon 0.000709 0.00015 0.000161
30percentage Carbon 0.000375 0.000261 0.00042
45percentage Carbon 0.002765 0.000344 0.000724
data I'm putting in excel (imagine it has a box)
filename Mass_change_forMatlabNew
15 0.000709 30 0.00375 45 0.002765
15 0.00015 30 0.000261 45 0.000344
15 0.000161 30 0.00042 45 0.000724
a picture above is a graph that i want
Y axis is a mass grain
X axis is a percentage Carbon
and show on a top right like 1st box is a 600, 2nd is a 700 and 3rd is a 800
big thank to everyone
0 Comments
Accepted Answer
Scott MacKenzie
on 5 Mar 2022
Edited: Scott MacKenzie
on 5 Mar 2022
The code below uses your data and generates a bar chart similar to your sketch. I'm not sure how picky you are about the colors. The bar colors below are MATLAB's default.
% data from question
M = [15, 0.000709, 30, 0.00375, 45, 0.002765
15, 0.00015, 30, 0.000261, 45, 0.000344
15, 0.000161, 30, 0.00042, 45, 0.000724];
bar(M(:,[2 4 6])');
set(gca, 'XTickLabel', string(M(1,[1 3 5])));
xlabel('Percent Carbon');
ylabel('Mass Grain');
legend({['800' char(176) 'C'], ['700' char(176) 'C'], ['600' char(176) 'C']});
7 Comments
More Answers (0)
See Also
Categories
Find more on Discrete Data Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!