How to make a scatter table programmatically?

2 次查看(过去 30 天)
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

采纳的回答

Guillaume
Guillaume 2018-12-20
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).
So, ignoring all these inconsistencies, use histcouns2 to compute the histogram:
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 个评论
Guillaume
Guillaume 2018-12-20
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

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by