How to make a scatter table programmatically?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ravindu Lokuliyana
le 20 Déc 2018
Commenté : Ravindu Lokuliyana
le 20 Déc 2018
Hi there,
Hereby attached(.xml file) which is having two different parameter results (x and y).
I need to take those results into scatter table defining different ranges as mentioned in the Table 01.
How can I do that programmatically?
Your help is much appreciated.
BR,
Ravi
0 commentaires
Réponse acceptée
Guillaume
le 20 Déc 2018
There's no x value smaller than 0.5 in your inputs so it's unclear why you have a 10 in your first row of your table. I'm going to assume that your table is incorrect. There are more inconsistencies.
Your bin edges are also badly defined. What happens if x is 0.55, it's outside any of your bins. Same for y = 10.5. Normally you would define the end of bin 1 as x<0.5 and the start of bin2 as x>=0.5 (or x<=0.5 and x>0.5).
xy = xlsread('Scatter table.xlsx', '3:4');
histcounts2(x(1, :), y(2, :), [0 0.5 1.0 1.5 Inf], [0 5 10 15 Inf], 'Normalization', 'probability') * 100
4 commentaires
Guillaume
le 20 Déc 2018
Here is a cheap replacement of histcounts2 with the 'probability' normalisation:
xy = xlsread('Scatter table.xlsx', '3:4'); %or however you want to import the data
xbin = discretize(xy(1, :), [0, 0.5, 1, 1.5, Inf]); %or whichever bins you want for x
ybin = discretize(xy(2, :), [0, 5, 10, 15, Inf]); %or whichever bins you want for y
accumarray([xbin(:), ybin(:)], 1) / numel(xbin) * 100
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!