Histogram in App Designer

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 comentarios

Rik
Rik el 3 de Jul. de 2020
The first step is to get your data into Matlab. How did you do that? What is the next step?
Diogo Costa
Diogo Costa el 3 de Jul. de 2020
Editada: Diogo Costa el 3 de Jul. de 2020
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);
Diogo Costa
Diogo Costa el 3 de Jul. de 2020
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 el 3 de Jul. de 2020
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 el 3 de Jul. de 2020
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 el 3 de Jul. de 2020
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 el 3 de Jul. de 2020
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
Diogo Costa
Diogo Costa el 3 de Jul. de 2020
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 el 3 de Jul. de 2020
I don't think that is possible with histogram, so you will have to create two bar objects.

Iniciar sesión para comentar.

Respuestas (1)

Harry Smith
Harry Smith el 18 de Jun. de 2022

1 voto

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

1 comentario

Gligan Miron Marius
Gligan Miron Marius el 18 de Mayo de 2023
Yes, in my case it works correctly.
...
I_hist=histogram(app.Hist, I_rgb);
...

Iniciar sesión para comentar.

Categorías

Más información sobre Data Distribution Plots en Centro de ayuda y File Exchange.

Preguntada:

el 3 de Jul. de 2020

Comentada:

el 18 de Mayo de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by