How to make a scatter table programmatically?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Ravindu Lokuliyana
am 20 Dez. 2018
Kommentiert: Ravindu Lokuliyana
am 20 Dez. 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 Kommentare
Akzeptierte Antwort
Guillaume
am 20 Dez. 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 Kommentare
Guillaume
am 20 Dez. 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
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Distribution Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!