How to calculate the area in table and certain coordinate

조회 수: 3 (최근 30일)
mohd akmal masud
mohd akmal masud 2021년 10월 3일
댓글: C B 2021년 10월 13일
Area Centroid
____ ________________
9 147.67 109.11
27 146.81 108.52
43 147.09 109.7
54 147.81 109.35
12 146.17 134.42
56 147.73 109.46
21 146.48 134.05
53 147.83 109.26
20 147.3 134.25
2 126.5 146
43 147.67 108.63
24 147 134.04
2 126.5 146
45 147.93 108.87
20 147.25 133.95
10 125.5 146.8
37 147.43 108.89
16 147.31 133.56
6 126.17 147
36 147.39 108.81
12 147.92 133.75
6 126.5 147
34 147.32 108.91
12 147.92 133.75
8 126.5 146
29 147.69 109
13 147.54 133.38
8 126.5 146
28 147.71 109.11
7 148.14 134.43
8 126.5 146
28 147.71 109.11
6 148 134.5
7 126.43 145.71
28 147.71 109.11
7 147.29 133.71
1 106 132
8 126.25 145.5
25 147.4 109.08
7 147.29 133.71
1 106 132
5 126.4 145.2
31 147.03 108.87
9 147.33 133.78
2 105.5 132
6 126.17 145
31 147.03 108.87
9 147.33 133.78
1 106 132
3 125.67 144.33
31 147.03 108.87
9 147.33 133.78
31 147.03 108.87
9 147.33 133.78
28 147.43 109.39
10 146.7 133.6
25 147.08 109.4
11 147.55 133.18
28 147.43 109.39
5 146.8 133.2
20 147.7 109.55
3 149 132
12 147.92 109.33
Hi all, I have data above.Anyone know how to calculate the total are ? Let say Inwant calculate the the total are that have coordinate (147 109) and (146 108), is it like this the command sum([146:147 108:109])?

채택된 답변

C B
C B 2021년 10월 3일
편집: C B 2021년 10월 3일
Hello @mohd akmal masud, You need to take out Area index then sum it where centroid is within you range.
You can do that like following
Area = [9;27;43];
Centroid = [146.67 108.11; 146.81 109.52; 146.09 108.7];
T = table(Area ,Centroid);
%check in all value which are 147 in column 1 and 109 in column 2
trueIndex = ((147>=T.Centroid(:,1) & T.Centroid(:,1)>=146)&(109>=T.Centroid(:,2) & T.Centroid(:,2)>=108));
%add all area which have 147 and 109
sum(Area(trueIndex))
Or in one liner if you want
sum(Area(((147>=T.Centroid(:,1) & T.Centroid(:,1)>=146)&(109>=T.Centroid(:,2) & T.Centroid(:,2)>=108))))
Please mark answer as accepted if it satisfies your requirement.
  댓글 수: 13
mohd akmal masud
mohd akmal masud 2021년 10월 13일
yah..
T =
1593×2 table
Area Centroid
__________ __________________________
7.9862e+05 128.24 134.13 72.539
1 16 139 1
13 36.462 99.308 1.1538
75 69.987 156.37 3.2267
1 73 229 1
1 79 192 1
31 85.903 175.84 1.3226
80 95.75 128.22 1.575
21 95.333 169.38 1.1429
2095 90.026 119.06 7.0692
7 105.71 36 1
1 108 145 1
2 110.5 146 1
1 113 230 1
1 115 147 1
1 118 148 1
1979 128.44 174.24 6.4785
1 142 86 1
9 148.89 229.22 1
1275 152.11 172.63 8.7867
C B
C B 2021년 10월 13일
in this case there are 2 area what do you want with them 1st one or second or sum?

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

추가 답변 (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