Spaces:
Sleeping
Sleeping
upload 9 file
Browse files- Bhankhara_Df_11_he_5_2020-21.geojson +8 -0
- CoalTPP_Locations - small_dataset.csv +6 -0
- CoalTPP_Locations.csv +185 -0
- CoalTPP_Locations.geojson +183 -0
- ISRO_Logo.png +0 -0
- SAC_Logo.png +0 -0
- app.py +398 -0
- requirements.txt +6 -0
- sentinel_datasets.json +38 -0
Bhankhara_Df_11_he_5_2020-21.geojson
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"type": "FeatureCollection",
|
3 |
+
"name": "Bhankhara Df 11 he 5 2020-21",
|
4 |
+
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
|
5 |
+
"features": [
|
6 |
+
{ "type": "Feature", "properties": { "Name": "bhankhara Df " }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 73.232880205954501, 23.9293492015216 ], [ 73.2320424558106, 23.9295414782706 ], [ 73.231770305881497, 23.929079612195199 ], [ 73.230492834793793, 23.929757112420202 ], [ 73.2296710069635, 23.930461233260601 ], [ 73.2287325848189, 23.929426068463702 ], [ 73.230010982152606, 23.928454021654801 ], [ 73.231320825956999, 23.9274161693899 ], [ 73.231748632627799, 23.9277412596551 ], [ 73.232405167342506, 23.927898156106 ], [ 73.232880205954501, 23.9293492015216 ] ] ] } }
|
7 |
+
]
|
8 |
+
}
|
CoalTPP_Locations - small_dataset.csv
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
name,latitude,longitude
|
2 |
+
PANIPAT TPS,29.3975059,76.8763161
|
3 |
+
RAJIV GANDHI TPS,29.34698,75.857538
|
4 |
+
YAMUNA NAGAR TPS,30.1075175,77.3267646
|
5 |
+
GH TPS (LEH.MOH.),30.2674,75.1644
|
6 |
+
GOINDWAL SAHIB TPP,31.38414,75.146503
|
CoalTPP_Locations.csv
ADDED
@@ -0,0 +1,185 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
name,latitude,longitude
|
2 |
+
PANIPAT TPS,29.3975059,76.8763161
|
3 |
+
RAJIV GANDHI TPS,29.34698,75.857538
|
4 |
+
YAMUNA NAGAR TPS,30.1075175,77.3267646
|
5 |
+
GH TPS (LEH.MOH.),30.2674,75.1644
|
6 |
+
GOINDWAL SAHIB TPP,31.38414,75.146503
|
7 |
+
ROPAR TPS,31.0417,76.5847
|
8 |
+
CHHABRA-II TPP,24.6236,77.0383
|
9 |
+
CHHABRA-I PH-1 TPP,24.62092,77.035439
|
10 |
+
CHHABRA-I PH-2 TPP,24.63433,77.0385039
|
11 |
+
KALISINDH TPS,24.5325129,76.100353
|
12 |
+
KOTA TPS,25.1717,75.8169
|
13 |
+
SURATGARH STPS,29.181766,74.018741
|
14 |
+
SURATGARH TPS,29.181766,74.018741
|
15 |
+
ANPARA TPS,24.202043,82.789128
|
16 |
+
HARDUAGANJ TPS,28.0175,78.13
|
17 |
+
JAWAHARPUR STPP,27.497098,78.826071
|
18 |
+
OBRA TPS,24.4445803,82.9803325
|
19 |
+
PARICHHA TPS,25.513571,78.757918
|
20 |
+
DSPM TPS,22.368196,82.721986
|
21 |
+
KORBA-WEST TPS,22.412536,82.682187
|
22 |
+
MARWA TPS,22.070801,82.602189
|
23 |
+
GANDHI NAGAR TPS,23.249722,72.673889
|
24 |
+
UKAI TPS,21.2093,73.5574
|
25 |
+
WANAKBORI TPS,22.8725375,73.3588028
|
26 |
+
AMARKANTAK EXT TPS,23.162146,81.632816
|
27 |
+
SANJAY GANDHI TPS,23.305744,81.064817
|
28 |
+
SATPURA TPS,22.108133,78.177072
|
29 |
+
SHREE SINGAJI TPP,22.09914,76.531727
|
30 |
+
BHUSAWAL TPS,21.04798,75.85502
|
31 |
+
CHANDRAPUR(MAHARASHTRA) STPS,20.0063,79.29
|
32 |
+
KHAPARKHEDA TPS,21.276138,79.121518
|
33 |
+
KORADI TPS,21.2420685,79.0949659
|
34 |
+
NASIK TPS,19.9814589,73.8920556
|
35 |
+
PARAS TPS,20.7147,76.7948
|
36 |
+
PARLI TPS,18.9075857,76.5429497
|
37 |
+
Dr. N.TATA RAO TPS,16.5984901,80.5365853
|
38 |
+
RAYALASEEMA TPS,14.697282,78.459364
|
39 |
+
DAMODARAM SANJEEVAIAH TPS,14.327604,80.122105
|
40 |
+
BELLARY TPS,15.1931738,76.7195034
|
41 |
+
RAICHUR TPS,16.3532,77.3422
|
42 |
+
YERMARUS TPP,16.295261,77.35612
|
43 |
+
METTUR TPS,11.7720201,77.8141046
|
44 |
+
METTUR TPS - II,11.7744564,77.8172243
|
45 |
+
NORTH CHENNAI TPS,13.253013,80.327804
|
46 |
+
TUTICORIN TPS,8.762518,78.175976
|
47 |
+
SINGARENI TPP,18.837231,79.574766
|
48 |
+
BHADRADRI TPP,18.027488,80.735645
|
49 |
+
KAKATIYA TPS,18.3831934,79.8271644
|
50 |
+
KOTHAGUDEM TPS (NEW),17.6219,80.69355
|
51 |
+
KOTHAGUDEM TPS (STAGE-7),,
|
52 |
+
RAMAGUNDEM-B TPS,,
|
53 |
+
TENUGHAT TPS,23.7276632,85.7652325
|
54 |
+
IB VALLEY TPS,21.690729,83.860096
|
55 |
+
D.P.L. TPS,23.521147,87.302309
|
56 |
+
BAKRESWAR TPS,23.8292205,87.451034
|
57 |
+
BANDEL TPS,22.995746,88.403815
|
58 |
+
KOLAGHAT TPS,22.416565,87.870984
|
59 |
+
SAGARDIGHI TPS,24.3688141,88.1040001
|
60 |
+
SANTALDIH TPS,23.6013,86.4666
|
61 |
+
DADRI (NCTPP),28.603,77.6078
|
62 |
+
RIHAND STPS,24.027,82.7915
|
63 |
+
SINGRAULI STPS,24.1042119,82.7063552
|
64 |
+
TANDA TPS,26.5894846,82.601235
|
65 |
+
UNCHAHAR TPS,25.9137597,81.3272384
|
66 |
+
GADARWARA TPP,22.861752,78.866129
|
67 |
+
KHARGONE STPP,22.065169,75.851943
|
68 |
+
KORBA STPS,22.3874221,82.6818961
|
69 |
+
LARA TPP,21.757661,83.457545
|
70 |
+
MAUDA TPS,21.18074,79.396541
|
71 |
+
SIPAT STPS,22.131662,82.29035
|
72 |
+
SOLAPUR STPS,17.551296,75.9832
|
73 |
+
VINDHYACHAL STPS,24.0983,82.6719
|
74 |
+
KUDGI STPP,16.499546,75.834632
|
75 |
+
RAMAGUNDEM STPS,18.7584502,79.4573172
|
76 |
+
SIMHADRI,17.591,83.09166
|
77 |
+
TELANGANA STPP PH-1,18.7584502,79.4573172
|
78 |
+
BARAUNI TPS,25.391376,86.023488
|
79 |
+
BARH STPS,25.4693,85.74516
|
80 |
+
DARLIPALI STPS,21.963554,83.89187
|
81 |
+
FARAKKA STPS,24.772729,87.893707
|
82 |
+
KAHALGAON TPS,25.236903,87.265595
|
83 |
+
NORTH KARANPURA TPP,23.850772,85.012411
|
84 |
+
TALCHER STPS,21.098074,85.074005
|
85 |
+
BONGAIGAON TPP,26.44437,90.367205
|
86 |
+
INDIRA GANDHI STPP,28.485091,76.37316
|
87 |
+
MEJA STPP,25.145867,81.940096
|
88 |
+
BHILAI TPS,21.184,81.4237
|
89 |
+
SEIONI TPP,22.735479,79.912341
|
90 |
+
VALLUR TPP,13.237131,80.301754
|
91 |
+
MUZAFFARPUR TPS,26.194771,85.303302
|
92 |
+
NABINAGAR STPP,24.776,84.158025
|
93 |
+
NABINAGAR TPP,24.705081,84.088738
|
94 |
+
BOKARO TPS `A` EXP,23.782944,85.883391
|
95 |
+
CHANDRAPURA(DVC) TPS,20.0063,79.29
|
96 |
+
DURGAPUR STEEL TPS,23.531506,87.249856
|
97 |
+
KODARMA TPP,24.391534,85.561899
|
98 |
+
MEJIA TPS,23.4639,87.1311
|
99 |
+
RAGHUNATHPUR TPP,23.62191,86.660703
|
100 |
+
NTPL TUTICORIN TPP,8.760363,78.171083
|
101 |
+
ADANI POWER LIMITED KAWAI TPP,24.777997,76.737144
|
102 |
+
ADANI POWER LIMITED RAIGARH TPP,21.743775,83.274093
|
103 |
+
ADANI POWER LIMITED RAIPUR TPP,21.449918,81.852474
|
104 |
+
ADANI POWER LIMITED TIRODA TPP,21.412502,79.96731
|
105 |
+
AKALTARA TPS,21.960296,82.409064
|
106 |
+
AMRAVATI TPS,21.080316,77.901242
|
107 |
+
ANPARA C TPS,24.202043,82.789128
|
108 |
+
ANUPPUR TPP,23.073731,81.784286
|
109 |
+
BALCO TPS,22.3930944,82.7439443
|
110 |
+
BANDAKHAR TPP,22.340954,82.430603
|
111 |
+
BARADARHA TPS,21.911436,83.188863
|
112 |
+
BARKHERA TPS,28.55,80.1
|
113 |
+
BELA TPS,20.806389,79.051944
|
114 |
+
BINA TPS,24.317222,78.133564
|
115 |
+
BINJKOTE TPP,22.010422,83.205779
|
116 |
+
BUDGE BUDGE TPS,22.470344,88.139949
|
117 |
+
DAHANU TPS,19.9545,72.7478
|
118 |
+
DERANG TPP,21.127044,84.980552
|
119 |
+
DHARIWAL TPP,20.010588,79.203433
|
120 |
+
DISHERGARH TPP,,
|
121 |
+
GMR WARORA TPS,20.279656,78.975351
|
122 |
+
HALDIA TPP,22.060459,88.109748
|
123 |
+
HIRANMAYE TPP,22.076989,88.098413
|
124 |
+
JOJOBERA TPS,22.7554,86.2491
|
125 |
+
KAMALANGA TPS,20.870576,85.266979
|
126 |
+
KHAMBARKHERA TPS,27.9,80.8
|
127 |
+
KUNDARKI TPS,27.03,82.23
|
128 |
+
LALITPUR TPS,24.795833,78.646944
|
129 |
+
MAHADEV PRASAD STPP,22.836504,86.061294
|
130 |
+
MAHAN TPP,24.008674,82.41703
|
131 |
+
MAHATMA GANDHI TPS,28.488143,76.352534
|
132 |
+
MAITHON RB TPP,23.8209,86.76
|
133 |
+
MAQSOODPUR TPS,27.81,79.94
|
134 |
+
NAWAPARA TPP,21.906738,83.128556
|
135 |
+
NIGRI TPP,24.14997,81.904525
|
136 |
+
OP JINDAL TPS,22.104,83.445
|
137 |
+
PAINAMPURAM TPP,14.351195,80.143086
|
138 |
+
PATHADI TPP,22.2454,82.7246
|
139 |
+
PRAYAGRAJ TPP,25.196345,81.658534
|
140 |
+
RAJPURA TPP,30.558963,76.577593
|
141 |
+
ROSA TPP Ph-I,27.8194455,79.9371618
|
142 |
+
SABARMATI (D-F STATIONS),23.070555,72.593889
|
143 |
+
SASAN UMTPP,23.9775233,82.6264733
|
144 |
+
SGPL TPP,14.351195,80.143086
|
145 |
+
SHIRPUR TPP,21.15103,74.854206
|
146 |
+
SOUTHERN REPL. TPS,22.549591,88.291512
|
147 |
+
TALWANDI SABO TPP,29.92458,75.238929
|
148 |
+
TAMNAR TPP,22.098747,83.451312
|
149 |
+
UCHPINDA TPP,21.8864,83.12081
|
150 |
+
UTKAL TPP (IND BARATH),21.657942,83.919513
|
151 |
+
UTRAULA TPS,27.43,82.18
|
152 |
+
VEDANTA TPP,21.815743,84.042036
|
153 |
+
VIZAG TPP,17.563642,83.138877
|
154 |
+
WARDHA WARORA TPP,20.272443,78.978916
|
155 |
+
SIKKA REP. TPS,22.420828,69.8276
|
156 |
+
ADANI POWER LIMITED MUNDRA TPP - III,22.8234904,69.5534831
|
157 |
+
ADANI POWER LIMITED MUNDRA TPP - I & II,22.8234904,69.5534831
|
158 |
+
ADANI POWER LIMITED UDUPI TPP,13.1596,74.8002
|
159 |
+
ITPCL TPP,11.5216092,79.7518447
|
160 |
+
JSW RATNAGIRI TPP,17.296375,73.213105
|
161 |
+
MUNDRA UMTPP,22.8158,69.5281
|
162 |
+
MUTHIARA TPP,8.912716,78.144965
|
163 |
+
OPG Power Generation Private Limited,13.437422,80.09788
|
164 |
+
SALAYA TPP,22.3049,69.7101
|
165 |
+
SHREE CEMENT LTD TPS,26.073889,74.385
|
166 |
+
SIMHAPURI TPS,14.204576,80.086636
|
167 |
+
THAMMINAPATNAM TPS,,
|
168 |
+
TORANGALLU TPS(SBU-I),15.186771,76.6621387
|
169 |
+
TORANGALLU TPS(SBU-II),15.186771,76.6621387
|
170 |
+
TROMBAY TPS,19.0027,72.8979
|
171 |
+
TUTICORIN TPP ST-IV,,
|
172 |
+
BUTIBORI TPP,20.928591,78.933281
|
173 |
+
MIHAN TPS,21.0377,78.9334
|
174 |
+
NASIK (P) TPS,,
|
175 |
+
SALORA TPP,22.489952,82.606239
|
176 |
+
TUTICORIN (P) TPP,,
|
177 |
+
TITAGARH TPS,22.731974,88.370309
|
178 |
+
CHAKABURA TPP,22.393653,82.553249
|
179 |
+
GEPL TPP Ph-I,19.92949,79.133159
|
180 |
+
KASAIPALLI TPP,22.38895,82.5549
|
181 |
+
KATGHORA TPP,22.489779,82.60618
|
182 |
+
NIWARI TPP,25.43,79.71
|
183 |
+
RATIJA TPS,22.339994,82.492776
|
184 |
+
SVPL TPP,22.292,82.5254
|
185 |
+
SWASTIK KORBA TPP,,
|
CoalTPP_Locations.geojson
ADDED
@@ -0,0 +1,183 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"type": "FeatureCollection",
|
3 |
+
"name": "CoalTPP_Locations",
|
4 |
+
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
|
5 |
+
"features": [
|
6 |
+
{ "type": "Feature", "properties": { "Name": "PANIPAT TPS", "Latitude": 29.3975059, "Longitude": 76.8763161 }, "geometry": { "type": "Point", "coordinates": [ 76.8763161, 29.3975059 ] } },
|
7 |
+
{ "type": "Feature", "properties": { "Name": "RAJIV GANDHI TPS", "Latitude": 29.34698, "Longitude": 75.857538 }, "geometry": { "type": "Point", "coordinates": [ 75.857538, 29.34698 ] } },
|
8 |
+
{ "type": "Feature", "properties": { "Name": "YAMUNA NAGAR TPS", "Latitude": 30.1075175, "Longitude": 77.3267646 }, "geometry": { "type": "Point", "coordinates": [ 77.3267646, 30.1075175 ] } },
|
9 |
+
{ "type": "Feature", "properties": { "Name": "GH TPS (LEH.MOH.)", "Latitude": 30.2674, "Longitude": 75.1644 }, "geometry": { "type": "Point", "coordinates": [ 75.1644, 30.2674 ] } },
|
10 |
+
{ "type": "Feature", "properties": { "Name": "GOINDWAL SAHIB TPP", "Latitude": 31.38414, "Longitude": 75.146503 }, "geometry": { "type": "Point", "coordinates": [ 75.146503, 31.38414 ] } },
|
11 |
+
{ "type": "Feature", "properties": { "Name": "ROPAR TPS", "Latitude": 31.0417, "Longitude": 76.5847 }, "geometry": { "type": "Point", "coordinates": [ 76.5847, 31.0417 ] } },
|
12 |
+
{ "type": "Feature", "properties": { "Name": "CHHABRA-II TPP", "Latitude": 24.6236, "Longitude": 77.0383 }, "geometry": { "type": "Point", "coordinates": [ 77.0383, 24.6236 ] } },
|
13 |
+
{ "type": "Feature", "properties": { "Name": "CHHABRA-I PH-1 TPP", "Latitude": 24.62092, "Longitude": 77.035439 }, "geometry": { "type": "Point", "coordinates": [ 77.035439, 24.62092 ] } },
|
14 |
+
{ "type": "Feature", "properties": { "Name": "CHHABRA-I PH-2 TPP", "Latitude": 24.63433, "Longitude": 77.0385039 }, "geometry": { "type": "Point", "coordinates": [ 77.0385039, 24.63433 ] } },
|
15 |
+
{ "type": "Feature", "properties": { "Name": "KALISINDH TPS", "Latitude": 24.5325129, "Longitude": 76.100353 }, "geometry": { "type": "Point", "coordinates": [ 76.100353, 24.5325129 ] } },
|
16 |
+
{ "type": "Feature", "properties": { "Name": "KOTA TPS", "Latitude": 25.1717, "Longitude": 75.8169 }, "geometry": { "type": "Point", "coordinates": [ 75.8169, 25.1717 ] } },
|
17 |
+
{ "type": "Feature", "properties": { "Name": "SURATGARH STPS", "Latitude": 29.181766, "Longitude": 74.018741 }, "geometry": { "type": "Point", "coordinates": [ 74.018741, 29.181766 ] } },
|
18 |
+
{ "type": "Feature", "properties": { "Name": "SURATGARH TPS", "Latitude": 29.181766, "Longitude": 74.018741 }, "geometry": { "type": "Point", "coordinates": [ 74.018741, 29.181766 ] } },
|
19 |
+
{ "type": "Feature", "properties": { "Name": "ANPARA TPS", "Latitude": 24.202043, "Longitude": 82.789128 }, "geometry": { "type": "Point", "coordinates": [ 82.789128, 24.202043 ] } },
|
20 |
+
{ "type": "Feature", "properties": { "Name": "HARDUAGANJ TPS", "Latitude": 28.0175, "Longitude": 78.13 }, "geometry": { "type": "Point", "coordinates": [ 78.13, 28.0175 ] } },
|
21 |
+
{ "type": "Feature", "properties": { "Name": "JAWAHARPUR STPP", "Latitude": 27.497098, "Longitude": 78.826071 }, "geometry": { "type": "Point", "coordinates": [ 78.826071, 27.497098 ] } },
|
22 |
+
{ "type": "Feature", "properties": { "Name": "OBRA TPS", "Latitude": 24.4445803, "Longitude": 82.9803325 }, "geometry": { "type": "Point", "coordinates": [ 82.9803325, 24.4445803 ] } },
|
23 |
+
{ "type": "Feature", "properties": { "Name": "PARICHHA TPS", "Latitude": 25.513571, "Longitude": 78.757918 }, "geometry": { "type": "Point", "coordinates": [ 78.757918, 25.513571 ] } },
|
24 |
+
{ "type": "Feature", "properties": { "Name": "DSPM TPS", "Latitude": 22.368196, "Longitude": 82.721986 }, "geometry": { "type": "Point", "coordinates": [ 82.721986, 22.368196 ] } },
|
25 |
+
{ "type": "Feature", "properties": { "Name": "KORBA-WEST TPS", "Latitude": 22.412536, "Longitude": 82.682187 }, "geometry": { "type": "Point", "coordinates": [ 82.682187, 22.412536 ] } },
|
26 |
+
{ "type": "Feature", "properties": { "Name": "MARWA TPS", "Latitude": 22.070801, "Longitude": 82.602189 }, "geometry": { "type": "Point", "coordinates": [ 82.602189, 22.070801 ] } },
|
27 |
+
{ "type": "Feature", "properties": { "Name": "GANDHI NAGAR TPS", "Latitude": 23.249722, "Longitude": 72.673889 }, "geometry": { "type": "Point", "coordinates": [ 72.673889, 23.249722 ] } },
|
28 |
+
{ "type": "Feature", "properties": { "Name": "UKAI TPS", "Latitude": 21.2093, "Longitude": 73.5574 }, "geometry": { "type": "Point", "coordinates": [ 73.5574, 21.2093 ] } },
|
29 |
+
{ "type": "Feature", "properties": { "Name": "WANAKBORI TPS", "Latitude": 22.8725375, "Longitude": 73.3588028 }, "geometry": { "type": "Point", "coordinates": [ 73.3588028, 22.8725375 ] } },
|
30 |
+
{ "type": "Feature", "properties": { "Name": "AMARKANTAK EXT TPS", "Latitude": 23.162146, "Longitude": 81.632816 }, "geometry": { "type": "Point", "coordinates": [ 81.632816, 23.162146 ] } },
|
31 |
+
{ "type": "Feature", "properties": { "Name": "SANJAY GANDHI TPS", "Latitude": 23.305744, "Longitude": 81.064817 }, "geometry": { "type": "Point", "coordinates": [ 81.064817, 23.305744 ] } },
|
32 |
+
{ "type": "Feature", "properties": { "Name": "SATPURA TPS", "Latitude": 22.108133, "Longitude": 78.177072 }, "geometry": { "type": "Point", "coordinates": [ 78.177072, 22.108133 ] } },
|
33 |
+
{ "type": "Feature", "properties": { "Name": "SHREE SINGAJI TPP", "Latitude": 22.09914, "Longitude": 76.531727 }, "geometry": { "type": "Point", "coordinates": [ 76.531727, 22.09914 ] } },
|
34 |
+
{ "type": "Feature", "properties": { "Name": "BHUSAWAL TPS", "Latitude": 21.04798, "Longitude": 75.85502 }, "geometry": { "type": "Point", "coordinates": [ 75.85502, 21.04798 ] } },
|
35 |
+
{ "type": "Feature", "properties": { "Name": "CHANDRAPUR(MAHARASHTRA) STPS", "Latitude": 20.0063, "Longitude": 79.29 }, "geometry": { "type": "Point", "coordinates": [ 79.29, 20.0063 ] } },
|
36 |
+
{ "type": "Feature", "properties": { "Name": "KHAPARKHEDA TPS", "Latitude": 21.276138, "Longitude": 79.121518 }, "geometry": { "type": "Point", "coordinates": [ 79.121518, 21.276138 ] } },
|
37 |
+
{ "type": "Feature", "properties": { "Name": "KORADI TPS", "Latitude": 21.2420685, "Longitude": 79.0949659 }, "geometry": { "type": "Point", "coordinates": [ 79.0949659, 21.2420685 ] } },
|
38 |
+
{ "type": "Feature", "properties": { "Name": "NASIK TPS", "Latitude": 19.9814589, "Longitude": 73.8920556 }, "geometry": { "type": "Point", "coordinates": [ 73.8920556, 19.9814589 ] } },
|
39 |
+
{ "type": "Feature", "properties": { "Name": "PARAS TPS", "Latitude": 20.7147, "Longitude": 76.7948 }, "geometry": { "type": "Point", "coordinates": [ 76.7948, 20.7147 ] } },
|
40 |
+
{ "type": "Feature", "properties": { "Name": "PARLI TPS", "Latitude": 18.9075857, "Longitude": 76.5429497 }, "geometry": { "type": "Point", "coordinates": [ 76.5429497, 18.9075857 ] } },
|
41 |
+
{ "type": "Feature", "properties": { "Name": "Dr. N.TATA RAO TPS", "Latitude": 16.5984901, "Longitude": 80.5365853 }, "geometry": { "type": "Point", "coordinates": [ 80.5365853, 16.5984901 ] } },
|
42 |
+
{ "type": "Feature", "properties": { "Name": "RAYALASEEMA TPS", "Latitude": 14.697282, "Longitude": 78.459364 }, "geometry": { "type": "Point", "coordinates": [ 78.459364, 14.697282 ] } },
|
43 |
+
{ "type": "Feature", "properties": { "Name": "DAMODARAM SANJEEVAIAH TPS", "Latitude": 14.327604, "Longitude": 80.122105 }, "geometry": { "type": "Point", "coordinates": [ 80.122105, 14.327604 ] } },
|
44 |
+
{ "type": "Feature", "properties": { "Name": "BELLARY TPS", "Latitude": 15.1931738, "Longitude": 76.7195034 }, "geometry": { "type": "Point", "coordinates": [ 76.7195034, 15.1931738 ] } },
|
45 |
+
{ "type": "Feature", "properties": { "Name": "RAICHUR TPS", "Latitude": 16.3532, "Longitude": 77.3422 }, "geometry": { "type": "Point", "coordinates": [ 77.3422, 16.3532 ] } },
|
46 |
+
{ "type": "Feature", "properties": { "Name": "YERMARUS TPP", "Latitude": 16.295261, "Longitude": 77.35612 }, "geometry": { "type": "Point", "coordinates": [ 77.35612, 16.295261 ] } },
|
47 |
+
{ "type": "Feature", "properties": { "Name": "METTUR TPS", "Latitude": 11.7720201, "Longitude": 77.8141046 }, "geometry": { "type": "Point", "coordinates": [ 77.8141046, 11.7720201 ] } },
|
48 |
+
{ "type": "Feature", "properties": { "Name": "METTUR TPS - II", "Latitude": 11.7744564, "Longitude": 77.8172243 }, "geometry": { "type": "Point", "coordinates": [ 77.8172243, 11.7744564 ] } },
|
49 |
+
{ "type": "Feature", "properties": { "Name": "NORTH CHENNAI TPS", "Latitude": 13.253013, "Longitude": 80.327804 }, "geometry": { "type": "Point", "coordinates": [ 80.327804, 13.253013 ] } },
|
50 |
+
{ "type": "Feature", "properties": { "Name": "TUTICORIN TPS", "Latitude": 8.762518, "Longitude": 78.175976 }, "geometry": { "type": "Point", "coordinates": [ 78.175976, 8.762518 ] } },
|
51 |
+
{ "type": "Feature", "properties": { "Name": "SINGARENI TPP", "Latitude": 18.837231, "Longitude": 79.574766 }, "geometry": { "type": "Point", "coordinates": [ 79.574766, 18.837231 ] } },
|
52 |
+
{ "type": "Feature", "properties": { "Name": "BHADRADRI TPP", "Latitude": 18.027488, "Longitude": 80.735645 }, "geometry": { "type": "Point", "coordinates": [ 80.735645, 18.027488 ] } },
|
53 |
+
{ "type": "Feature", "properties": { "Name": "KAKATIYA TPS", "Latitude": 18.3831934, "Longitude": 79.8271644 }, "geometry": { "type": "Point", "coordinates": [ 79.8271644, 18.3831934 ] } },
|
54 |
+
{ "type": "Feature", "properties": { "Name": "KOTHAGUDEM TPS (NEW)", "Latitude": 17.6219, "Longitude": 80.69355 }, "geometry": { "type": "Point", "coordinates": [ 80.69355, 17.6219 ] } },
|
55 |
+
{ "type": "Feature", "properties": { "Name": "TENUGHAT TPS", "Latitude": 23.7276632, "Longitude": 85.7652325 }, "geometry": { "type": "Point", "coordinates": [ 85.7652325, 23.7276632 ] } },
|
56 |
+
{ "type": "Feature", "properties": { "Name": "IB VALLEY TPS", "Latitude": 21.690729, "Longitude": 83.860096 }, "geometry": { "type": "Point", "coordinates": [ 83.860096, 21.690729 ] } },
|
57 |
+
{ "type": "Feature", "properties": { "Name": "D.P.L. TPS", "Latitude": 23.521147, "Longitude": 87.302309 }, "geometry": { "type": "Point", "coordinates": [ 87.302309, 23.521147 ] } },
|
58 |
+
{ "type": "Feature", "properties": { "Name": "BAKRESWAR TPS", "Latitude": 23.8292205, "Longitude": 87.451034 }, "geometry": { "type": "Point", "coordinates": [ 87.451034, 23.8292205 ] } },
|
59 |
+
{ "type": "Feature", "properties": { "Name": "BANDEL TPS", "Latitude": 22.995746, "Longitude": 88.403815 }, "geometry": { "type": "Point", "coordinates": [ 88.403815, 22.995746 ] } },
|
60 |
+
{ "type": "Feature", "properties": { "Name": "KOLAGHAT TPS", "Latitude": 22.416565, "Longitude": 87.870984 }, "geometry": { "type": "Point", "coordinates": [ 87.870984, 22.416565 ] } },
|
61 |
+
{ "type": "Feature", "properties": { "Name": "SAGARDIGHI TPS", "Latitude": 24.3688141, "Longitude": 88.1040001 }, "geometry": { "type": "Point", "coordinates": [ 88.1040001, 24.3688141 ] } },
|
62 |
+
{ "type": "Feature", "properties": { "Name": "SANTALDIH TPS", "Latitude": 23.6013, "Longitude": 86.4666 }, "geometry": { "type": "Point", "coordinates": [ 86.4666, 23.6013 ] } },
|
63 |
+
{ "type": "Feature", "properties": { "Name": "DADRI (NCTPP)", "Latitude": 28.603, "Longitude": 77.6078 }, "geometry": { "type": "Point", "coordinates": [ 77.6078, 28.603 ] } },
|
64 |
+
{ "type": "Feature", "properties": { "Name": "RIHAND STPS", "Latitude": 24.027, "Longitude": 82.7915 }, "geometry": { "type": "Point", "coordinates": [ 82.7915, 24.027 ] } },
|
65 |
+
{ "type": "Feature", "properties": { "Name": "SINGRAULI STPS", "Latitude": 24.1042119, "Longitude": 82.7063552 }, "geometry": { "type": "Point", "coordinates": [ 82.7063552, 24.1042119 ] } },
|
66 |
+
{ "type": "Feature", "properties": { "Name": "TANDA TPS", "Latitude": 26.5894846, "Longitude": 82.601235 }, "geometry": { "type": "Point", "coordinates": [ 82.601235, 26.5894846 ] } },
|
67 |
+
{ "type": "Feature", "properties": { "Name": "UNCHAHAR TPS", "Latitude": 25.9137597, "Longitude": 81.3272384 }, "geometry": { "type": "Point", "coordinates": [ 81.3272384, 25.9137597 ] } },
|
68 |
+
{ "type": "Feature", "properties": { "Name": "GADARWARA TPP", "Latitude": 22.861752, "Longitude": 78.866129 }, "geometry": { "type": "Point", "coordinates": [ 78.866129, 22.861752 ] } },
|
69 |
+
{ "type": "Feature", "properties": { "Name": "KHARGONE STPP", "Latitude": 22.065169, "Longitude": 75.851943 }, "geometry": { "type": "Point", "coordinates": [ 75.851943, 22.065169 ] } },
|
70 |
+
{ "type": "Feature", "properties": { "Name": "KORBA STPS", "Latitude": 22.3874221, "Longitude": 82.6818961 }, "geometry": { "type": "Point", "coordinates": [ 82.6818961, 22.3874221 ] } },
|
71 |
+
{ "type": "Feature", "properties": { "Name": "LARA TPP", "Latitude": 21.757661, "Longitude": 83.457545 }, "geometry": { "type": "Point", "coordinates": [ 83.457545, 21.757661 ] } },
|
72 |
+
{ "type": "Feature", "properties": { "Name": "MAUDA TPS", "Latitude": 21.18074, "Longitude": 79.396541 }, "geometry": { "type": "Point", "coordinates": [ 79.396541, 21.18074 ] } },
|
73 |
+
{ "type": "Feature", "properties": { "Name": "SIPAT STPS", "Latitude": 22.131662, "Longitude": 82.29035 }, "geometry": { "type": "Point", "coordinates": [ 82.29035, 22.131662 ] } },
|
74 |
+
{ "type": "Feature", "properties": { "Name": "SOLAPUR STPS", "Latitude": 17.551296, "Longitude": 75.9832 }, "geometry": { "type": "Point", "coordinates": [ 75.9832, 17.551296 ] } },
|
75 |
+
{ "type": "Feature", "properties": { "Name": "VINDHYACHAL STPS", "Latitude": 24.0983, "Longitude": 82.6719 }, "geometry": { "type": "Point", "coordinates": [ 82.6719, 24.0983 ] } },
|
76 |
+
{ "type": "Feature", "properties": { "Name": "KUDGI STPP", "Latitude": 16.499546, "Longitude": 75.834632 }, "geometry": { "type": "Point", "coordinates": [ 75.834632, 16.499546 ] } },
|
77 |
+
{ "type": "Feature", "properties": { "Name": "RAMAGUNDEM STPS", "Latitude": 18.7584502, "Longitude": 79.4573172 }, "geometry": { "type": "Point", "coordinates": [ 79.4573172, 18.7584502 ] } },
|
78 |
+
{ "type": "Feature", "properties": { "Name": "SIMHADRI", "Latitude": 17.591, "Longitude": 83.09166 }, "geometry": { "type": "Point", "coordinates": [ 83.09166, 17.591 ] } },
|
79 |
+
{ "type": "Feature", "properties": { "Name": "TELANGANA STPP PH-1", "Latitude": 18.7584502, "Longitude": 79.4573172 }, "geometry": { "type": "Point", "coordinates": [ 79.4573172, 18.7584502 ] } },
|
80 |
+
{ "type": "Feature", "properties": { "Name": "BARAUNI TPS", "Latitude": 25.391376, "Longitude": 86.023488 }, "geometry": { "type": "Point", "coordinates": [ 86.023488, 25.391376 ] } },
|
81 |
+
{ "type": "Feature", "properties": { "Name": "BARH STPS", "Latitude": 25.4693, "Longitude": 85.74516 }, "geometry": { "type": "Point", "coordinates": [ 85.74516, 25.4693 ] } },
|
82 |
+
{ "type": "Feature", "properties": { "Name": "DARLIPALI STPS", "Latitude": 21.963554, "Longitude": 83.89187 }, "geometry": { "type": "Point", "coordinates": [ 83.89187, 21.963554 ] } },
|
83 |
+
{ "type": "Feature", "properties": { "Name": "FARAKKA STPS", "Latitude": 24.772729, "Longitude": 87.893707 }, "geometry": { "type": "Point", "coordinates": [ 87.893707, 24.772729 ] } },
|
84 |
+
{ "type": "Feature", "properties": { "Name": "KAHALGAON TPS", "Latitude": 25.236903, "Longitude": 87.265595 }, "geometry": { "type": "Point", "coordinates": [ 87.265595, 25.236903 ] } },
|
85 |
+
{ "type": "Feature", "properties": { "Name": "NORTH KARANPURA TPP", "Latitude": 23.850772, "Longitude": 85.012411 }, "geometry": { "type": "Point", "coordinates": [ 85.012411, 23.850772 ] } },
|
86 |
+
{ "type": "Feature", "properties": { "Name": "TALCHER STPS", "Latitude": 21.098074, "Longitude": 85.074005 }, "geometry": { "type": "Point", "coordinates": [ 85.074005, 21.098074 ] } },
|
87 |
+
{ "type": "Feature", "properties": { "Name": "BONGAIGAON TPP", "Latitude": 26.44437, "Longitude": 90.367205 }, "geometry": { "type": "Point", "coordinates": [ 90.367205, 26.44437 ] } },
|
88 |
+
{ "type": "Feature", "properties": { "Name": "INDIRA GANDHI STPP", "Latitude": 28.485091, "Longitude": 76.37316 }, "geometry": { "type": "Point", "coordinates": [ 76.37316, 28.485091 ] } },
|
89 |
+
{ "type": "Feature", "properties": { "Name": "MEJA STPP", "Latitude": 25.145867, "Longitude": 81.940096 }, "geometry": { "type": "Point", "coordinates": [ 81.940096, 25.145867 ] } },
|
90 |
+
{ "type": "Feature", "properties": { "Name": "BHILAI TPS", "Latitude": 21.184, "Longitude": 81.4237 }, "geometry": { "type": "Point", "coordinates": [ 81.4237, 21.184 ] } },
|
91 |
+
{ "type": "Feature", "properties": { "Name": "SEIONI TPP", "Latitude": 22.735479, "Longitude": 79.912341 }, "geometry": { "type": "Point", "coordinates": [ 79.912341, 22.735479 ] } },
|
92 |
+
{ "type": "Feature", "properties": { "Name": "VALLUR TPP", "Latitude": 13.237131, "Longitude": 80.301754 }, "geometry": { "type": "Point", "coordinates": [ 80.301754, 13.237131 ] } },
|
93 |
+
{ "type": "Feature", "properties": { "Name": "MUZAFFARPUR TPS", "Latitude": 26.194771, "Longitude": 85.303302 }, "geometry": { "type": "Point", "coordinates": [ 85.303302, 26.194771 ] } },
|
94 |
+
{ "type": "Feature", "properties": { "Name": "NABINAGAR STPP", "Latitude": 24.776, "Longitude": 84.158025 }, "geometry": { "type": "Point", "coordinates": [ 84.158025, 24.776 ] } },
|
95 |
+
{ "type": "Feature", "properties": { "Name": "NABINAGAR TPP", "Latitude": 24.705081, "Longitude": 84.088738 }, "geometry": { "type": "Point", "coordinates": [ 84.088738, 24.705081 ] } },
|
96 |
+
{ "type": "Feature", "properties": { "Name": "BOKARO TPS `A` EXP", "Latitude": 23.782944, "Longitude": 85.883391 }, "geometry": { "type": "Point", "coordinates": [ 85.883391, 23.782944 ] } },
|
97 |
+
{ "type": "Feature", "properties": { "Name": "CHANDRAPURA(DVC) TPS", "Latitude": 20.0063, "Longitude": 79.29 }, "geometry": { "type": "Point", "coordinates": [ 79.29, 20.0063 ] } },
|
98 |
+
{ "type": "Feature", "properties": { "Name": "DURGAPUR STEEL TPS", "Latitude": 23.531506, "Longitude": 87.249856 }, "geometry": { "type": "Point", "coordinates": [ 87.249856, 23.531506 ] } },
|
99 |
+
{ "type": "Feature", "properties": { "Name": "KODARMA TPP", "Latitude": 24.391534, "Longitude": 85.561899 }, "geometry": { "type": "Point", "coordinates": [ 85.561899, 24.391534 ] } },
|
100 |
+
{ "type": "Feature", "properties": { "Name": "MEJIA TPS", "Latitude": 23.4639, "Longitude": 87.1311 }, "geometry": { "type": "Point", "coordinates": [ 87.1311, 23.4639 ] } },
|
101 |
+
{ "type": "Feature", "properties": { "Name": "RAGHUNATHPUR TPP", "Latitude": 23.62191, "Longitude": 86.660703 }, "geometry": { "type": "Point", "coordinates": [ 86.660703, 23.62191 ] } },
|
102 |
+
{ "type": "Feature", "properties": { "Name": "NTPL TUTICORIN TPP", "Latitude": 8.760363, "Longitude": 78.171083 }, "geometry": { "type": "Point", "coordinates": [ 78.171083, 8.760363 ] } },
|
103 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED KAWAI TPP", "Latitude": 24.777997, "Longitude": 76.737144 }, "geometry": { "type": "Point", "coordinates": [ 76.737144, 24.777997 ] } },
|
104 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED RAIGARH TPP", "Latitude": 21.743775, "Longitude": 83.274093 }, "geometry": { "type": "Point", "coordinates": [ 83.274093, 21.743775 ] } },
|
105 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED RAIPUR TPP", "Latitude": 21.449918, "Longitude": 81.852474 }, "geometry": { "type": "Point", "coordinates": [ 81.852474, 21.449918 ] } },
|
106 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED TIRODA TPP", "Latitude": 21.412502, "Longitude": 79.96731 }, "geometry": { "type": "Point", "coordinates": [ 79.96731, 21.412502 ] } },
|
107 |
+
{ "type": "Feature", "properties": { "Name": "AKALTARA TPS", "Latitude": 21.960296, "Longitude": 82.409064 }, "geometry": { "type": "Point", "coordinates": [ 82.409064, 21.960296 ] } },
|
108 |
+
{ "type": "Feature", "properties": { "Name": "AMRAVATI TPS", "Latitude": 21.080316, "Longitude": 77.901242 }, "geometry": { "type": "Point", "coordinates": [ 77.901242, 21.080316 ] } },
|
109 |
+
{ "type": "Feature", "properties": { "Name": "ANPARA C TPS", "Latitude": 24.202043, "Longitude": 82.789128 }, "geometry": { "type": "Point", "coordinates": [ 82.789128, 24.202043 ] } },
|
110 |
+
{ "type": "Feature", "properties": { "Name": "ANUPPUR TPP", "Latitude": 23.073731, "Longitude": 81.784286 }, "geometry": { "type": "Point", "coordinates": [ 81.784286, 23.073731 ] } },
|
111 |
+
{ "type": "Feature", "properties": { "Name": "BALCO TPS", "Latitude": 22.3930944, "Longitude": 82.7439443 }, "geometry": { "type": "Point", "coordinates": [ 82.7439443, 22.3930944 ] } },
|
112 |
+
{ "type": "Feature", "properties": { "Name": "BANDAKHAR TPP", "Latitude": 22.340954, "Longitude": 82.430603 }, "geometry": { "type": "Point", "coordinates": [ 82.430603, 22.340954 ] } },
|
113 |
+
{ "type": "Feature", "properties": { "Name": "BARADARHA TPS", "Latitude": 21.911436, "Longitude": 83.188863 }, "geometry": { "type": "Point", "coordinates": [ 83.188863, 21.911436 ] } },
|
114 |
+
{ "type": "Feature", "properties": { "Name": "BARKHERA TPS", "Latitude": 28.55, "Longitude": 80.1 }, "geometry": { "type": "Point", "coordinates": [ 80.1, 28.55 ] } },
|
115 |
+
{ "type": "Feature", "properties": { "Name": "BELA TPS", "Latitude": 20.806389, "Longitude": 79.051944 }, "geometry": { "type": "Point", "coordinates": [ 79.051944, 20.806389 ] } },
|
116 |
+
{ "type": "Feature", "properties": { "Name": "BINA TPS", "Latitude": 24.317222, "Longitude": 78.133564 }, "geometry": { "type": "Point", "coordinates": [ 78.133564, 24.317222 ] } },
|
117 |
+
{ "type": "Feature", "properties": { "Name": "BINJKOTE TPP", "Latitude": 22.010422, "Longitude": 83.205779 }, "geometry": { "type": "Point", "coordinates": [ 83.205779, 22.010422 ] } },
|
118 |
+
{ "type": "Feature", "properties": { "Name": "BUDGE BUDGE TPS", "Latitude": 22.470344, "Longitude": 88.139949 }, "geometry": { "type": "Point", "coordinates": [ 88.139949, 22.470344 ] } },
|
119 |
+
{ "type": "Feature", "properties": { "Name": "DAHANU TPS", "Latitude": 19.9545, "Longitude": 72.7478 }, "geometry": { "type": "Point", "coordinates": [ 72.7478, 19.9545 ] } },
|
120 |
+
{ "type": "Feature", "properties": { "Name": "DERANG TPP", "Latitude": 21.127044, "Longitude": 84.980552 }, "geometry": { "type": "Point", "coordinates": [ 84.980552, 21.127044 ] } },
|
121 |
+
{ "type": "Feature", "properties": { "Name": "DHARIWAL TPP", "Latitude": 20.010588, "Longitude": 79.203433 }, "geometry": { "type": "Point", "coordinates": [ 79.203433, 20.010588 ] } },
|
122 |
+
{ "type": "Feature", "properties": { "Name": "GMR WARORA TPS", "Latitude": 20.279656, "Longitude": 78.975351 }, "geometry": { "type": "Point", "coordinates": [ 78.975351, 20.279656 ] } },
|
123 |
+
{ "type": "Feature", "properties": { "Name": "HALDIA TPP", "Latitude": 22.060459, "Longitude": 88.109748 }, "geometry": { "type": "Point", "coordinates": [ 88.109748, 22.060459 ] } },
|
124 |
+
{ "type": "Feature", "properties": { "Name": "HIRANMAYE TPP", "Latitude": 22.076989, "Longitude": 88.098413 }, "geometry": { "type": "Point", "coordinates": [ 88.098413, 22.076989 ] } },
|
125 |
+
{ "type": "Feature", "properties": { "Name": "JOJOBERA TPS", "Latitude": 22.7554, "Longitude": 86.2491 }, "geometry": { "type": "Point", "coordinates": [ 86.2491, 22.7554 ] } },
|
126 |
+
{ "type": "Feature", "properties": { "Name": "KAMALANGA TPS", "Latitude": 20.870576, "Longitude": 85.266979 }, "geometry": { "type": "Point", "coordinates": [ 85.266979, 20.870576 ] } },
|
127 |
+
{ "type": "Feature", "properties": { "Name": "KHAMBARKHERA TPS", "Latitude": 27.9, "Longitude": 80.8 }, "geometry": { "type": "Point", "coordinates": [ 80.8, 27.9 ] } },
|
128 |
+
{ "type": "Feature", "properties": { "Name": "KUNDARKI TPS", "Latitude": 27.03, "Longitude": 82.23 }, "geometry": { "type": "Point", "coordinates": [ 82.23, 27.03 ] } },
|
129 |
+
{ "type": "Feature", "properties": { "Name": "LALITPUR TPS", "Latitude": 24.795833, "Longitude": 78.646944 }, "geometry": { "type": "Point", "coordinates": [ 78.646944, 24.795833 ] } },
|
130 |
+
{ "type": "Feature", "properties": { "Name": "MAHADEV PRASAD STPP", "Latitude": 22.836504, "Longitude": 86.061294 }, "geometry": { "type": "Point", "coordinates": [ 86.061294, 22.836504 ] } },
|
131 |
+
{ "type": "Feature", "properties": { "Name": "MAHAN TPP", "Latitude": 24.008674, "Longitude": 82.41703 }, "geometry": { "type": "Point", "coordinates": [ 82.41703, 24.008674 ] } },
|
132 |
+
{ "type": "Feature", "properties": { "Name": "MAHATMA GANDHI TPS", "Latitude": 28.488143, "Longitude": 76.352534 }, "geometry": { "type": "Point", "coordinates": [ 76.352534, 28.488143 ] } },
|
133 |
+
{ "type": "Feature", "properties": { "Name": "MAITHON RB TPP", "Latitude": 23.8209, "Longitude": 86.76 }, "geometry": { "type": "Point", "coordinates": [ 86.76, 23.8209 ] } },
|
134 |
+
{ "type": "Feature", "properties": { "Name": "MAQSOODPUR TPS", "Latitude": 27.81, "Longitude": 79.94 }, "geometry": { "type": "Point", "coordinates": [ 79.94, 27.81 ] } },
|
135 |
+
{ "type": "Feature", "properties": { "Name": "NAWAPARA TPP", "Latitude": 21.906738, "Longitude": 83.128556 }, "geometry": { "type": "Point", "coordinates": [ 83.128556, 21.906738 ] } },
|
136 |
+
{ "type": "Feature", "properties": { "Name": "NIGRI TPP", "Latitude": 24.14997, "Longitude": 81.904525 }, "geometry": { "type": "Point", "coordinates": [ 81.904525, 24.14997 ] } },
|
137 |
+
{ "type": "Feature", "properties": { "Name": "OP JINDAL TPS", "Latitude": 22.104, "Longitude": 83.445 }, "geometry": { "type": "Point", "coordinates": [ 83.445, 22.104 ] } },
|
138 |
+
{ "type": "Feature", "properties": { "Name": "PAINAMPURAM TPP", "Latitude": 14.351195, "Longitude": 80.143086 }, "geometry": { "type": "Point", "coordinates": [ 80.143086, 14.351195 ] } },
|
139 |
+
{ "type": "Feature", "properties": { "Name": "PATHADI TPP", "Latitude": 22.2454, "Longitude": 82.7246 }, "geometry": { "type": "Point", "coordinates": [ 82.7246, 22.2454 ] } },
|
140 |
+
{ "type": "Feature", "properties": { "Name": "PRAYAGRAJ TPP", "Latitude": 25.196345, "Longitude": 81.658534 }, "geometry": { "type": "Point", "coordinates": [ 81.658534, 25.196345 ] } },
|
141 |
+
{ "type": "Feature", "properties": { "Name": "RAJPURA TPP", "Latitude": 30.558963, "Longitude": 76.577593 }, "geometry": { "type": "Point", "coordinates": [ 76.577593, 30.558963 ] } },
|
142 |
+
{ "type": "Feature", "properties": { "Name": "ROSA TPP Ph-I", "Latitude": 27.8194455, "Longitude": 79.9371618 }, "geometry": { "type": "Point", "coordinates": [ 79.9371618, 27.8194455 ] } },
|
143 |
+
{ "type": "Feature", "properties": { "Name": "SABARMATI (D-F STATIONS)", "Latitude": 23.070555, "Longitude": 72.593889 }, "geometry": { "type": "Point", "coordinates": [ 72.593889, 23.070555 ] } },
|
144 |
+
{ "type": "Feature", "properties": { "Name": "SASAN UMTPP", "Latitude": 23.9775233, "Longitude": 82.6264733 }, "geometry": { "type": "Point", "coordinates": [ 82.6264733, 23.9775233 ] } },
|
145 |
+
{ "type": "Feature", "properties": { "Name": "SGPL TPP", "Latitude": 14.351195, "Longitude": 80.143086 }, "geometry": { "type": "Point", "coordinates": [ 80.143086, 14.351195 ] } },
|
146 |
+
{ "type": "Feature", "properties": { "Name": "SHIRPUR TPP", "Latitude": 21.15103, "Longitude": 74.854206 }, "geometry": { "type": "Point", "coordinates": [ 74.854206, 21.15103 ] } },
|
147 |
+
{ "type": "Feature", "properties": { "Name": "SOUTHERN REPL. TPS", "Latitude": 22.549591, "Longitude": 88.291512 }, "geometry": { "type": "Point", "coordinates": [ 88.291512, 22.549591 ] } },
|
148 |
+
{ "type": "Feature", "properties": { "Name": "TALWANDI SABO TPP", "Latitude": 29.92458, "Longitude": 75.238929 }, "geometry": { "type": "Point", "coordinates": [ 75.238929, 29.92458 ] } },
|
149 |
+
{ "type": "Feature", "properties": { "Name": "TAMNAR TPP", "Latitude": 22.098747, "Longitude": 83.451312 }, "geometry": { "type": "Point", "coordinates": [ 83.451312, 22.098747 ] } },
|
150 |
+
{ "type": "Feature", "properties": { "Name": "UCHPINDA TPP", "Latitude": 21.8864, "Longitude": 83.12081 }, "geometry": { "type": "Point", "coordinates": [ 83.12081, 21.8864 ] } },
|
151 |
+
{ "type": "Feature", "properties": { "Name": "UTKAL TPP (IND BARATH)", "Latitude": 21.657942, "Longitude": 83.919513 }, "geometry": { "type": "Point", "coordinates": [ 83.919513, 21.657942 ] } },
|
152 |
+
{ "type": "Feature", "properties": { "Name": "UTRAULA TPS", "Latitude": 27.43, "Longitude": 82.18 }, "geometry": { "type": "Point", "coordinates": [ 82.18, 27.43 ] } },
|
153 |
+
{ "type": "Feature", "properties": { "Name": "VEDANTA TPP", "Latitude": 21.815743, "Longitude": 84.042036 }, "geometry": { "type": "Point", "coordinates": [ 84.042036, 21.815743 ] } },
|
154 |
+
{ "type": "Feature", "properties": { "Name": "VIZAG TPP", "Latitude": 17.563642, "Longitude": 83.138877 }, "geometry": { "type": "Point", "coordinates": [ 83.138877, 17.563642 ] } },
|
155 |
+
{ "type": "Feature", "properties": { "Name": "WARDHA WARORA TPP", "Latitude": 20.272443, "Longitude": 78.978916 }, "geometry": { "type": "Point", "coordinates": [ 78.978916, 20.272443 ] } },
|
156 |
+
{ "type": "Feature", "properties": { "Name": "SIKKA REP. TPS", "Latitude": 22.420828, "Longitude": 69.8276 }, "geometry": { "type": "Point", "coordinates": [ 69.8276, 22.420828 ] } },
|
157 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED MUNDRA TPP - III", "Latitude": 22.8234904, "Longitude": 69.5534831 }, "geometry": { "type": "Point", "coordinates": [ 69.5534831, 22.8234904 ] } },
|
158 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED MUNDRA TPP - I & II", "Latitude": 22.8234904, "Longitude": 69.5534831 }, "geometry": { "type": "Point", "coordinates": [ 69.5534831, 22.8234904 ] } },
|
159 |
+
{ "type": "Feature", "properties": { "Name": "ADANI POWER LIMITED UDUPI TPP", "Latitude": 13.1596, "Longitude": 74.8002 }, "geometry": { "type": "Point", "coordinates": [ 74.8002, 13.1596 ] } },
|
160 |
+
{ "type": "Feature", "properties": { "Name": "ITPCL TPP", "Latitude": 11.5216092, "Longitude": 79.7518447 }, "geometry": { "type": "Point", "coordinates": [ 79.7518447, 11.5216092 ] } },
|
161 |
+
{ "type": "Feature", "properties": { "Name": "JSW RATNAGIRI TPP", "Latitude": 17.296375, "Longitude": 73.213105 }, "geometry": { "type": "Point", "coordinates": [ 73.213105, 17.296375 ] } },
|
162 |
+
{ "type": "Feature", "properties": { "Name": "MUNDRA UMTPP", "Latitude": 22.8158, "Longitude": 69.5281 }, "geometry": { "type": "Point", "coordinates": [ 69.5281, 22.8158 ] } },
|
163 |
+
{ "type": "Feature", "properties": { "Name": "MUTHIARA TPP", "Latitude": 8.912716, "Longitude": 78.144965 }, "geometry": { "type": "Point", "coordinates": [ 78.144965, 8.912716 ] } },
|
164 |
+
{ "type": "Feature", "properties": { "Name": "OPG Power Generation Private Limited", "Latitude": 13.437422, "Longitude": 80.09788 }, "geometry": { "type": "Point", "coordinates": [ 80.09788, 13.437422 ] } },
|
165 |
+
{ "type": "Feature", "properties": { "Name": "SALAYA TPP", "Latitude": 22.3049, "Longitude": 69.7101 }, "geometry": { "type": "Point", "coordinates": [ 69.7101, 22.3049 ] } },
|
166 |
+
{ "type": "Feature", "properties": { "Name": "SHREE CEMENT LTD TPS", "Latitude": 26.073889, "Longitude": 74.385 }, "geometry": { "type": "Point", "coordinates": [ 74.385, 26.073889 ] } },
|
167 |
+
{ "type": "Feature", "properties": { "Name": "SIMHAPURI TPS", "Latitude": 14.204576, "Longitude": 80.086636 }, "geometry": { "type": "Point", "coordinates": [ 80.086636, 14.204576 ] } },
|
168 |
+
{ "type": "Feature", "properties": { "Name": "TORANGALLU TPS(SBU-I)", "Latitude": 15.186771, "Longitude": 76.6621387 }, "geometry": { "type": "Point", "coordinates": [ 76.6621387, 15.186771 ] } },
|
169 |
+
{ "type": "Feature", "properties": { "Name": "TORANGALLU TPS(SBU-II)", "Latitude": 15.186771, "Longitude": 76.6621387 }, "geometry": { "type": "Point", "coordinates": [ 76.6621387, 15.186771 ] } },
|
170 |
+
{ "type": "Feature", "properties": { "Name": "TROMBAY TPS", "Latitude": 19.0027, "Longitude": 72.8979 }, "geometry": { "type": "Point", "coordinates": [ 72.8979, 19.0027 ] } },
|
171 |
+
{ "type": "Feature", "properties": { "Name": "BUTIBORI TPP", "Latitude": 20.928591, "Longitude": 78.933281 }, "geometry": { "type": "Point", "coordinates": [ 78.933281, 20.928591 ] } },
|
172 |
+
{ "type": "Feature", "properties": { "Name": "MIHAN TPS", "Latitude": 21.0377, "Longitude": 78.9334 }, "geometry": { "type": "Point", "coordinates": [ 78.9334, 21.0377 ] } },
|
173 |
+
{ "type": "Feature", "properties": { "Name": "SALORA TPP", "Latitude": 22.489952, "Longitude": 82.606239 }, "geometry": { "type": "Point", "coordinates": [ 82.606239, 22.489952 ] } },
|
174 |
+
{ "type": "Feature", "properties": { "Name": "TITAGARH TPS", "Latitude": 22.731974, "Longitude": 88.370309 }, "geometry": { "type": "Point", "coordinates": [ 88.370309, 22.731974 ] } },
|
175 |
+
{ "type": "Feature", "properties": { "Name": "CHAKABURA TPP", "Latitude": 22.393653, "Longitude": 82.553249 }, "geometry": { "type": "Point", "coordinates": [ 82.553249, 22.393653 ] } },
|
176 |
+
{ "type": "Feature", "properties": { "Name": "GEPL TPP Ph-I", "Latitude": 19.92949, "Longitude": 79.133159 }, "geometry": { "type": "Point", "coordinates": [ 79.133159, 19.92949 ] } },
|
177 |
+
{ "type": "Feature", "properties": { "Name": "KASAIPALLI TPP", "Latitude": 22.38895, "Longitude": 82.5549 }, "geometry": { "type": "Point", "coordinates": [ 82.5549, 22.38895 ] } },
|
178 |
+
{ "type": "Feature", "properties": { "Name": "KATGHORA TPP", "Latitude": 22.489779, "Longitude": 82.60618 }, "geometry": { "type": "Point", "coordinates": [ 82.60618, 22.489779 ] } },
|
179 |
+
{ "type": "Feature", "properties": { "Name": "NIWARI TPP", "Latitude": 25.43, "Longitude": 79.71 }, "geometry": { "type": "Point", "coordinates": [ 79.71, 25.43 ] } },
|
180 |
+
{ "type": "Feature", "properties": { "Name": "RATIJA TPS", "Latitude": 22.339994, "Longitude": 82.492776 }, "geometry": { "type": "Point", "coordinates": [ 82.492776, 22.339994 ] } },
|
181 |
+
{ "type": "Feature", "properties": { "Name": "SVPL TPP", "Latitude": 22.292, "Longitude": 82.5254 }, "geometry": { "type": "Point", "coordinates": [ 82.5254, 22.292 ] } }
|
182 |
+
]
|
183 |
+
}
|
ISRO_Logo.png
ADDED
![]() |
SAC_Logo.png
ADDED
![]() |
app.py
ADDED
@@ -0,0 +1,398 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import streamlit as st
|
2 |
+
import json
|
3 |
+
import ee
|
4 |
+
import os
|
5 |
+
import pandas as pd
|
6 |
+
import geopandas as gpd
|
7 |
+
from datetime import datetime
|
8 |
+
import leafmap.foliumap as leafmap
|
9 |
+
import time
|
10 |
+
import re
|
11 |
+
|
12 |
+
# Set up the page layout
|
13 |
+
st.set_page_config(layout="wide")
|
14 |
+
|
15 |
+
# Custom button styling
|
16 |
+
m = st.markdown(
|
17 |
+
"""
|
18 |
+
<style>
|
19 |
+
div.stButton > button:first-child {
|
20 |
+
background-color: #006400;
|
21 |
+
color:#ffffff;
|
22 |
+
}
|
23 |
+
</style>""",
|
24 |
+
unsafe_allow_html=True,
|
25 |
+
)
|
26 |
+
|
27 |
+
# Logo
|
28 |
+
st.write(
|
29 |
+
f"""
|
30 |
+
<div style="display: flex; justify-content: space-between; align-items: center;">
|
31 |
+
<img src="https://huggingface.co/spaces/YashMK89/GEE_Calculator/resolve/main/ISRO_Logo.png" style="width: 20%; margin-right: auto;">
|
32 |
+
<img src="https://huggingface.co/spaces/YashMK89/GEE_Calculator/resolve/main/SAC_Logo.png" style="width: 20%; margin-left: auto;">
|
33 |
+
</div>
|
34 |
+
""",
|
35 |
+
unsafe_allow_html=True,
|
36 |
+
)
|
37 |
+
|
38 |
+
# Authenticate and initialize Earth Engine
|
39 |
+
earthengine_credentials = os.environ.get("EE_Authentication")
|
40 |
+
|
41 |
+
# Initialize Earth Engine with secret credentials
|
42 |
+
os.makedirs(os.path.expanduser("~/.config/earthengine/"), exist_ok=True)
|
43 |
+
with open(os.path.expanduser("~/.config/earthengine/credentials"), "w") as f:
|
44 |
+
f.write(earthengine_credentials)
|
45 |
+
|
46 |
+
ee.Initialize(project='ee-yashsacisro24')
|
47 |
+
|
48 |
+
# Load Sentinel dataset options from JSON file
|
49 |
+
with open("sentinel_datasets.json") as f:
|
50 |
+
data = json.load(f)
|
51 |
+
|
52 |
+
# Display the title and dataset selection
|
53 |
+
st.title("Sentinel Dataset")
|
54 |
+
|
55 |
+
# Select dataset category and subcategory (case-insensitive selection)
|
56 |
+
main_selection = st.selectbox("Select Sentinel Dataset Category", list(data.keys()))
|
57 |
+
|
58 |
+
if main_selection:
|
59 |
+
sub_options = data[main_selection]["sub_options"]
|
60 |
+
sub_selection = st.selectbox("Select Specific Dataset ID", list(sub_options.keys()))
|
61 |
+
|
62 |
+
# Earth Engine Index Calculator Section
|
63 |
+
st.header("Earth Engine Index Calculator")
|
64 |
+
|
65 |
+
# Choose Index or Custom Formula (case-insensitive)
|
66 |
+
index_choice = st.selectbox("Select an Index or Enter Custom Formula", ['NDVI', 'NDWI', 'Average NO₂', 'Custom Formula'])
|
67 |
+
|
68 |
+
# Initialize custom_formula variable
|
69 |
+
custom_formula = ""
|
70 |
+
|
71 |
+
# Display corresponding formula based on the index selected (case-insensitive)
|
72 |
+
if index_choice.lower() == 'ndvi':
|
73 |
+
st.write("Formula for NDVI: NDVI = (B8 - B4) / (B8 + B4)")
|
74 |
+
elif index_choice.lower() == 'ndwi':
|
75 |
+
st.write("Formula for NDWI: NDWI = (B3 - B8) / (B3 + B8)")
|
76 |
+
elif index_choice.lower() == 'average no₂':
|
77 |
+
st.write("Formula for Average NO₂: Average NO₂ = Mean(NO2 band)")
|
78 |
+
elif index_choice.lower() == 'custom formula':
|
79 |
+
custom_formula = st.text_input("Enter Custom Formula (e.g., 'B5 - B4 / B5 + B4')")
|
80 |
+
st.write(f"Custom Formula: {custom_formula}") # Display the custom formula after the user inputs it
|
81 |
+
|
82 |
+
# Function to check if the polygon geometry is valid and convert it to the correct format
|
83 |
+
def convert_to_ee_geometry(geometry):
|
84 |
+
# Ensure the polygon geometry is in the right format
|
85 |
+
if geometry.is_valid:
|
86 |
+
# Convert the geometry to GeoJSON format
|
87 |
+
geojson = geometry.__geo_interface__
|
88 |
+
# Convert to Earth Engine geometry
|
89 |
+
return ee.Geometry(geojson)
|
90 |
+
else:
|
91 |
+
raise ValueError("Invalid geometry: The polygon geometry is not valid.")
|
92 |
+
|
93 |
+
# Function to read points from CSV
|
94 |
+
def read_csv(file_path):
|
95 |
+
df = pd.read_csv(file_path)
|
96 |
+
return df
|
97 |
+
|
98 |
+
# Function to read points from GeoJSON
|
99 |
+
def read_geojson(file_path):
|
100 |
+
gdf = gpd.read_file(file_path)
|
101 |
+
return gdf
|
102 |
+
|
103 |
+
# Function to read points from KML
|
104 |
+
def read_kml(file_path):
|
105 |
+
gdf = gpd.read_file(file_path, driver='KML')
|
106 |
+
return gdf
|
107 |
+
|
108 |
+
# Ask user whether they want to process 'Point' or 'Polygon' data (case-insensitive)
|
109 |
+
shape_type = st.selectbox("Do you want to process 'Point' or 'Polygon' data?", ["Point", "Polygon"])
|
110 |
+
|
111 |
+
# Ask user to upload a file based on shape type (case-insensitive)
|
112 |
+
file_upload = st.file_uploader(f"Upload your {shape_type} data (CSV, GeoJSON, KML)", type=["csv", "geojson", "kml"])
|
113 |
+
|
114 |
+
# Date Input for Start and End Dates
|
115 |
+
start_date = st.date_input("Start Date", value=pd.to_datetime('2020-01-01'))
|
116 |
+
end_date = st.date_input("End Date", value=pd.to_datetime('2020-12-31'))
|
117 |
+
|
118 |
+
# Convert start_date and end_date to string format for Earth Engine
|
119 |
+
start_date_str = start_date.strftime('%Y-%m-%d')
|
120 |
+
end_date_str = end_date.strftime('%Y-%m-%d')
|
121 |
+
|
122 |
+
# Initialize session state for storing results if not already done
|
123 |
+
if 'results' not in st.session_state:
|
124 |
+
st.session_state.results = []
|
125 |
+
if 'last_params' not in st.session_state:
|
126 |
+
st.session_state.last_params = {}
|
127 |
+
if 'map_data' not in st.session_state:
|
128 |
+
st.session_state.map_data = None # Initialize map_data
|
129 |
+
|
130 |
+
if 'file_upload' in st.session_state:
|
131 |
+
st.session_state.file_upload = None
|
132 |
+
|
133 |
+
# Function to check if parameters have changed
|
134 |
+
def parameters_changed():
|
135 |
+
return (
|
136 |
+
st.session_state.last_params.get('main_selection') != main_selection or
|
137 |
+
st.session_state.last_params.get('sub_selection') != sub_selection or
|
138 |
+
st.session_state.last_params.get('index_choice') != index_choice or
|
139 |
+
st.session_state.last_params.get('start_date_str') != start_date_str or
|
140 |
+
st.session_state.last_params.get('end_date_str') != end_date_str
|
141 |
+
)
|
142 |
+
|
143 |
+
# If parameters have changed, reset the results
|
144 |
+
if parameters_changed():
|
145 |
+
st.session_state.results = [] # Clear the previous results
|
146 |
+
# Update the last parameters to the current ones
|
147 |
+
st.session_state.last_params = {
|
148 |
+
'main_selection': main_selection,
|
149 |
+
'sub_selection': sub_selection,
|
150 |
+
'index_choice': index_choice,
|
151 |
+
'start_date_str': start_date_str,
|
152 |
+
'end_date_str': end_date_str
|
153 |
+
}
|
154 |
+
|
155 |
+
# Function to perform index calculations
|
156 |
+
def calculate_ndvi(image, geometry):
|
157 |
+
ndvi = image.normalizedDifference(['B8', 'B4']).rename('NDVI')
|
158 |
+
result = ndvi.reduceRegion(
|
159 |
+
reducer=ee.Reducer.mean(),
|
160 |
+
geometry=geometry,
|
161 |
+
scale=30
|
162 |
+
)
|
163 |
+
return result.get('NDVI')
|
164 |
+
|
165 |
+
def calculate_ndwi(image, geometry):
|
166 |
+
ndwi = image.normalizedDifference(['B3', 'B8']).rename('NDWI')
|
167 |
+
result = ndwi.reduceRegion(
|
168 |
+
reducer=ee.Reducer.mean(),
|
169 |
+
geometry=geometry,
|
170 |
+
scale=30
|
171 |
+
)
|
172 |
+
return result.get('NDWI')
|
173 |
+
|
174 |
+
def calculate_avg_no2_sentinel5p(image, geometry):
|
175 |
+
no2 = image.select('NO2').reduceRegion(
|
176 |
+
reducer=ee.Reducer.mean(),
|
177 |
+
geometry=geometry,
|
178 |
+
scale=1000
|
179 |
+
).get('NO2')
|
180 |
+
return no2
|
181 |
+
|
182 |
+
def calculate_custom_formula(image, geometry, formula):
|
183 |
+
result = image.expression(formula).rename('Custom Index').reduceRegion(
|
184 |
+
reducer=ee.Reducer.mean(),
|
185 |
+
geometry=geometry,
|
186 |
+
scale=30
|
187 |
+
)
|
188 |
+
return result.get('Custom Index')
|
189 |
+
|
190 |
+
# Check if the file uploaded is different from the previous file uploaded
|
191 |
+
if 'file_upload' in st.session_state and st.session_state.file_upload != file_upload:
|
192 |
+
reset_session_state_for_new_file() # Reset session state for new file
|
193 |
+
|
194 |
+
# Process each point or polygon
|
195 |
+
if file_upload:
|
196 |
+
locations_df = None # Initialize locations_df to None
|
197 |
+
polygons_df = None # Initialize polygons_df to None
|
198 |
+
|
199 |
+
file_extension = os.path.splitext(file_upload.name)[1].lower() # Convert extension to lowercase
|
200 |
+
|
201 |
+
# Read file based on shape type (case-insensitive)
|
202 |
+
if shape_type.lower() == 'point':
|
203 |
+
if file_extension == '.csv':
|
204 |
+
locations_df = read_csv(file_upload)
|
205 |
+
elif file_extension == '.geojson':
|
206 |
+
locations_df = read_geojson(file_upload)
|
207 |
+
elif file_extension == '.kml':
|
208 |
+
locations_df = read_kml(file_upload)
|
209 |
+
else:
|
210 |
+
st.error("Unsupported file type. Please upload a CSV, GeoJSON, or KML file for points.")
|
211 |
+
elif shape_type.lower() == 'polygon':
|
212 |
+
if file_extension == '.geojson':
|
213 |
+
polygons_df = read_geojson(file_upload)
|
214 |
+
elif file_extension == '.kml':
|
215 |
+
polygons_df = read_kml(file_upload)
|
216 |
+
else:
|
217 |
+
st.error("Unsupported file type. Please upload a GeoJSON or KML file for polygons.")
|
218 |
+
|
219 |
+
# Check if locations_df is populated for points
|
220 |
+
if locations_df is not None:
|
221 |
+
# Display a preview of the points data
|
222 |
+
st.write("Preview of the uploaded points data:")
|
223 |
+
st.dataframe(locations_df.head())
|
224 |
+
|
225 |
+
# Create a LeafMap object to display the points
|
226 |
+
m = leafmap.Map(center=[locations_df['latitude'].mean(), locations_df['longitude'].mean()], zoom=10)
|
227 |
+
|
228 |
+
# Add points to the map using a loop
|
229 |
+
for _, row in locations_df.iterrows():
|
230 |
+
latitude = row['latitude']
|
231 |
+
longitude = row['longitude']
|
232 |
+
|
233 |
+
# Check if latitude or longitude are NaN and skip if they are
|
234 |
+
if pd.isna(latitude) or pd.isna(longitude):
|
235 |
+
continue # Skip this row and move to the next one
|
236 |
+
|
237 |
+
m.add_marker(location=[latitude, longitude], popup=row.get('name', 'No Name'))
|
238 |
+
|
239 |
+
# Display map
|
240 |
+
st.write("Map of Uploaded Points:")
|
241 |
+
m.to_streamlit()
|
242 |
+
|
243 |
+
# Store the map in session_state
|
244 |
+
st.session_state.map_data = m
|
245 |
+
|
246 |
+
# Process each point for index calculation
|
247 |
+
for idx, row in locations_df.iterrows():
|
248 |
+
latitude = row['latitude']
|
249 |
+
longitude = row['longitude']
|
250 |
+
location_name = row.get('name', f"Point_{idx}")
|
251 |
+
|
252 |
+
# Skip processing if latitude or longitude is NaN
|
253 |
+
if pd.isna(latitude) or pd.isna(longitude):
|
254 |
+
continue # Skip this row and move to the next one
|
255 |
+
|
256 |
+
# Define the region of interest (ROI)
|
257 |
+
roi = ee.Geometry.Point([longitude, latitude])
|
258 |
+
|
259 |
+
# Load Sentinel-2 image collection
|
260 |
+
collection = ee.ImageCollection(sub_options[sub_selection]) \
|
261 |
+
.filterDate(ee.Date(start_date_str), ee.Date(end_date_str)) \
|
262 |
+
.filterBounds(roi)
|
263 |
+
|
264 |
+
# Check if the collection has images for the selected date range
|
265 |
+
image_count = collection.size().getInfo()
|
266 |
+
if image_count == 0:
|
267 |
+
st.warning(f"No images found for {location_name}.")
|
268 |
+
else:
|
269 |
+
st.write(f"Found {image_count} images for {location_name}.")
|
270 |
+
image = collection.first()
|
271 |
+
|
272 |
+
# Perform the calculation based on user selection
|
273 |
+
result = None
|
274 |
+
if index_choice.lower() == 'ndvi':
|
275 |
+
result = calculate_ndvi(image, roi)
|
276 |
+
elif index_choice.lower() == 'ndwi':
|
277 |
+
result = calculate_ndwi(image, roi)
|
278 |
+
elif index_choice.lower() == 'average no₂':
|
279 |
+
if 'NO2' in image.bandNames().getInfo():
|
280 |
+
result = calculate_avg_no2_sentinel5p(image, roi)
|
281 |
+
else:
|
282 |
+
st.warning(f"No NO2 band found for {location_name}. Please use Sentinel-5P for NO₂ data.")
|
283 |
+
elif index_choice.lower() == 'custom formula' and custom_formula:
|
284 |
+
result = calculate_custom_formula(image, roi, custom_formula)
|
285 |
+
|
286 |
+
if result is not None:
|
287 |
+
# Only store the numeric value (not the dictionary structure)
|
288 |
+
calculated_value = result.getInfo() # Get the numeric value
|
289 |
+
|
290 |
+
# Store the result in session state
|
291 |
+
st.session_state.results.append({
|
292 |
+
'Location Name': location_name,
|
293 |
+
'Latitude': latitude,
|
294 |
+
'Longitude': longitude,
|
295 |
+
'Calculated Value': calculated_value
|
296 |
+
})
|
297 |
+
|
298 |
+
# Check if polygons_df is populated for polygons
|
299 |
+
if polygons_df is not None:
|
300 |
+
# Display a preview of the polygons data
|
301 |
+
st.write("Preview of the uploaded polygons data:")
|
302 |
+
st.dataframe(polygons_df.head())
|
303 |
+
|
304 |
+
# Create a LeafMap object to display the polygons
|
305 |
+
m = leafmap.Map(center=[polygons_df.geometry.centroid.y.mean(), polygons_df.geometry.centroid.x.mean()], zoom=10)
|
306 |
+
|
307 |
+
# Add polygons to the map
|
308 |
+
for _, row in polygons_df.iterrows():
|
309 |
+
polygon = row['geometry']
|
310 |
+
if polygon.is_valid: # Check if the geometry is valid
|
311 |
+
# Create a GeoDataFrame with the single row
|
312 |
+
gdf = gpd.GeoDataFrame([row], geometry=[polygon], crs=polygons_df.crs)
|
313 |
+
|
314 |
+
# Add the valid GeoDataFrame to the map
|
315 |
+
m.add_gdf(gdf=gdf, layer_name=row.get('name', 'Unnamed Polygon'))
|
316 |
+
|
317 |
+
# Display map
|
318 |
+
st.write("Map of Uploaded Polygons:")
|
319 |
+
m.to_streamlit()
|
320 |
+
|
321 |
+
# Store the map in session_state
|
322 |
+
st.session_state.map_data = m
|
323 |
+
|
324 |
+
# Process each polygon for index calculation
|
325 |
+
for idx, row in polygons_df.iterrows():
|
326 |
+
polygon = row['geometry']
|
327 |
+
location_name = row.get('name', f"Polygon_{idx}")
|
328 |
+
|
329 |
+
# Define the region of interest (ROI)
|
330 |
+
try:
|
331 |
+
roi = convert_to_ee_geometry(polygon)
|
332 |
+
except ValueError as e:
|
333 |
+
st.error(str(e))
|
334 |
+
continue # Skip this polygon if geometry is invalid
|
335 |
+
|
336 |
+
# Load Sentinel-2 image collection
|
337 |
+
collection = ee.ImageCollection(sub_options[sub_selection]) \
|
338 |
+
.filterDate(ee.Date(start_date_str), ee.Date(end_date_str)) \
|
339 |
+
.filterBounds(roi)
|
340 |
+
|
341 |
+
# Check if the collection has images for the selected date range
|
342 |
+
image_count = collection.size().getInfo()
|
343 |
+
if image_count == 0:
|
344 |
+
st.warning(f"No images found for {location_name}.")
|
345 |
+
else:
|
346 |
+
st.write(f"Found {image_count} images for {location_name}.")
|
347 |
+
image = collection.first()
|
348 |
+
|
349 |
+
# Perform the calculation based on user selection
|
350 |
+
result = None
|
351 |
+
if index_choice.lower() == 'ndvi':
|
352 |
+
result = calculate_ndvi(image, roi)
|
353 |
+
elif index_choice.lower() == 'ndwi':
|
354 |
+
result = calculate_ndwi(image, roi)
|
355 |
+
elif index_choice.lower() == 'average no₂':
|
356 |
+
if 'NO2' in image.bandNames().getInfo():
|
357 |
+
result = calculate_avg_no2_sentinel5p(image, roi)
|
358 |
+
else:
|
359 |
+
st.warning(f"No NO2 band found for {location_name}. Please use Sentinel-5P for NO₂ data.")
|
360 |
+
elif index_choice.lower() == 'custom formula' and custom_formula:
|
361 |
+
result = calculate_custom_formula(image, roi, custom_formula)
|
362 |
+
|
363 |
+
if result is not None:
|
364 |
+
# Only store the numeric value (not the dictionary structure)
|
365 |
+
calculated_value = result.getInfo() # Get the numeric value
|
366 |
+
|
367 |
+
# Store the result in session state
|
368 |
+
st.session_state.results.append({
|
369 |
+
'Location Name': location_name,
|
370 |
+
'Calculated Value': calculated_value
|
371 |
+
})
|
372 |
+
|
373 |
+
# After processing, show the results
|
374 |
+
if st.session_state.results:
|
375 |
+
# Convert the results to a DataFrame for better visualization
|
376 |
+
result_df = pd.DataFrame(st.session_state.results)
|
377 |
+
|
378 |
+
# If the shape type is 'Point', include 'Latitude' and 'Longitude'
|
379 |
+
if shape_type.lower() == 'point':
|
380 |
+
# Show the results in a table format with Latitude and Longitude
|
381 |
+
st.write("Processed Results Table (Points):")
|
382 |
+
st.dataframe(result_df[['Location Name', 'Latitude', 'Longitude', 'Calculated Value']])
|
383 |
+
else:
|
384 |
+
# For polygons, we only show the Location Name and Calculated Value
|
385 |
+
st.write("Processed Results Table (Polygons):")
|
386 |
+
st.dataframe(result_df[['Location Name', 'Calculated Value']])
|
387 |
+
|
388 |
+
# Generate the dynamic filename
|
389 |
+
filename = f"{main_selection}_{sub_selection}_{start_date.strftime('%Y/%m/%d')}_{end_date.strftime('%Y/%m/%d')}_{shape_type}.csv"
|
390 |
+
|
391 |
+
# Convert results to DataFrame for download
|
392 |
+
st.download_button(
|
393 |
+
label="Download results as CSV",
|
394 |
+
data=result_df.to_csv(index=False).encode('utf-8'),
|
395 |
+
file_name=filename,
|
396 |
+
mime='text/csv'
|
397 |
+
)
|
398 |
+
|
requirements.txt
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
streamlit
|
2 |
+
ee
|
3 |
+
geemap
|
4 |
+
panda
|
5 |
+
geopandas
|
6 |
+
leafmap
|
sentinel_datasets.json
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"Sentinel-1 SAR GRD: C-band Synthetic Aperture Radar": {
|
3 |
+
"sub_options": {
|
4 |
+
"COPERNICUS/S1_GRD": "COPERNICUS/S1_GRD"
|
5 |
+
}
|
6 |
+
},
|
7 |
+
"Sentinel-2 MSI: Multispectral Instrument": {
|
8 |
+
"sub_options": {
|
9 |
+
"Surface Reflectance": "COPERNICUS/S2_SR_HARMONIZED",
|
10 |
+
"Top-of-Atmosphere Reflectance": "COPERNICUS/S2_HARMONIZED"
|
11 |
+
}
|
12 |
+
},
|
13 |
+
"Sentinel-3 OLCI EFR: Ocean and Land Color Instrument": {
|
14 |
+
"sub_options": {
|
15 |
+
"OLCI Radiance": "COPERNICUS/S3/OLCI"
|
16 |
+
}
|
17 |
+
},
|
18 |
+
"Sentinel-5P TROPOMI: TROPOspheric Monitoring Instrument": {
|
19 |
+
"sub_options": {
|
20 |
+
"Absorbing Aerosol Index": "COPERNICUS/S5P/OFFL/L3_AER_AI",
|
21 |
+
"Cloud Properties": "COPERNICUS/S5P/OFFL/L3_CLOUD",
|
22 |
+
"Carbon Monoxide (CO)": "COPERNICUS/S5P/OFFL/L3_CO",
|
23 |
+
"Formaldehyde (HCHO)": "COPERNICUS/S5P/OFFL/L3_HCHO",
|
24 |
+
"Nitrogen Dioxide (NO2)": "COPERNICUS/S5P/OFFL/L3_NO2",
|
25 |
+
"Ozone (O3)": "COPERNICUS/S5P/OFFL/L3_O3",
|
26 |
+
"Sulfur Dioxide (SO2)": "COPERNICUS/S5P/OFFL/L3_SO2",
|
27 |
+
"Methane (CH4)": "COPERNICUS/S5P/OFFL/L3_CH4"
|
28 |
+
}
|
29 |
+
},
|
30 |
+
"Derived Datasets": {
|
31 |
+
"sub_options": {
|
32 |
+
"Dynamic World": "GOOGLE/DYNAMICWORLD/V1",
|
33 |
+
"WorldCover": "ESA/WorldCover/v100",
|
34 |
+
"Cloud Score Plus": "GOOGLE/CLOUD_SCORE_PLUS/V1/S2_HARMONIZED",
|
35 |
+
"Sentinel-2 Cloud Probability": "COPERNICUS/S2_CLOUD_PROBABILITY"
|
36 |
+
}
|
37 |
+
}
|
38 |
+
}
|