So I have this excel file and i want to make an histogram or scatter in app desginer for smoke and non smoker, can someone help me out ? I can't figure it out, because in the excel Smoker is just one column, and i want to make a histogram with 2 bars (different colours), one is for the smokers, and the other one is for non smokers.

댓글 수: 9

Rik
Rik 2020년 7월 3일
The first step is to get your data into Matlab. How did you do that? What is the next step?
Diogo Costa
Diogo Costa 2020년 7월 3일
편집: Diogo Costa 2020년 7월 3일
I already did that, i am quite comfortable with matlab, but this histogram is getting my head tired...
Plus i got also a graphic of systolic and age.
I only need now the histogram..
handles.fileName = uigetfile('Pacientes.xlsx');
t = readtable("Pacientes.xlsx","Sheet",1);
app.UITable.Data = t;
x = table2array(t(:,"Systolic"));
y = table2array(t(:,"Age"));
plot(app.UIAxes,y,x);
So i figure it out, thanks anyway :)
t = readtable("Pacientes.xlsx","Sheet",1);
x = table2array(t(:,"Smoker"));
C = categorical(x,[1 0],{'Smoker','Non Smoker'})
h = histogram(app.UIAxes2,C,'BarWidth',0.5)
Rik
Rik 2020년 7월 3일
Feel free to move your solution to the answer section.
For next time you can also separately calculate the histcounts and then plot the frequencies as a bar chart.
Diogo Costa
Diogo Costa 2020년 7월 3일
But i have another problem now, i can't figure it out how to change the colors or the bars with that code, i didn't add anything, can you try help me ?
Rik
Rik 2020년 7월 3일
And that is why I tend to use histcounts. Have you tried reading the documentation for the histogram function to see what properties you can modify?
Diogo Costa
Diogo Costa 2020년 7월 3일
Sure, i saw that we can change the color, but i'm working in app designer so it's a bit different, i tried 'FaceColor' but I can't make the tow bars look in diferent colors
So I have this, but only turns the bars in red, and that's is not what i want, i want each bar with each color
t = readtable("Pacientes.xlsx","Sheet",1);
app.UITable.Data = t;
x = table2array(t(:,"Smoker"));
C = categorical(x,[1 0],{'Smoker','Non Smoker'})
h = histogram(app.UIAxes2,C,'BarWidth',0.5,'FaceColor',"r")
legend(h(:), {'Smoker' 'Non Smoker'},'Location','northwest')
Rik
Rik 2020년 7월 3일
I don't think that is possible with histogram, so you will have to create two bar objects.

댓글을 달려면 로그인하십시오.

답변 (1개)

Harry Smith
Harry Smith 2022년 6월 18일

1 개 추천

This may help:
histogram(app.histogramPlot,data)

댓글 수: 1

Gligan Miron Marius
Gligan Miron Marius 2023년 5월 18일
Yes, in my case it works correctly.
...
I_hist=histogram(app.Hist, I_rgb);
...

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Data Distribution Plots에 대해 자세히 알아보기

질문:

2020년 7월 3일

댓글:

2023년 5월 18일

Community Treasure Hunt

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

Start Hunting!

Translated by