Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -9,7 +9,6 @@ import altair as alt
|
|
9 |
# احراز هویت Google Earth Engine
|
10 |
def authenticate_gee():
|
11 |
try:
|
12 |
-
# برای استفاده، مسیر فایل JSON احراز هویت خود را وارد کنید
|
13 |
credentials = ee.ServiceAccountCredentials(None, 'ee-esmaeilkiani13877-cfdea6eaf411.json')
|
14 |
ee.Initialize(credentials)
|
15 |
st.sidebar.success("اتصال به Google Earth Engine برقرار شد!")
|
@@ -21,7 +20,6 @@ def authenticate_gee():
|
|
21 |
@st.cache_data
|
22 |
def load_data():
|
23 |
try:
|
24 |
-
# فرض بر این است که فایلهای CSV حاوی اطلاعات مزارع و مختصات آنها موجود هستند
|
25 |
df = pd.read_csv('پایگاه داده (1).csv')
|
26 |
farm_coords = pd.read_csv('farm_coordinates.csv')
|
27 |
return df, farm_coords
|
@@ -39,7 +37,7 @@ def get_ndvi_for_all_farms(date, farm_coords):
|
|
39 |
{'name': row['نام']}
|
40 |
),
|
41 |
axis=1
|
42 |
-
).
|
43 |
)
|
44 |
start_date = (date - datetime.timedelta(days=3)).strftime('%Y-%m-%d')
|
45 |
end_date = (date + datetime.timedelta(days=3)).strftime('%Y-%m-%d')
|
@@ -56,7 +54,7 @@ def get_ndvi_for_all_farms(date, farm_coords):
|
|
56 |
reducer=ee.Reducer.mean(),
|
57 |
scale=10
|
58 |
).getInfo()['features']
|
59 |
-
return {v['properties']['name']: v['properties']
|
60 |
return {}
|
61 |
|
62 |
# دریافت نقشه NDVI برای یک مزرعه
|
@@ -171,7 +169,7 @@ def main():
|
|
171 |
for date in dates:
|
172 |
ndvi_values = get_ndvi_for_all_farms(date, farm_coords)
|
173 |
for farm, ndvi in ndvi_values.items():
|
174 |
-
if ndvi:
|
175 |
weekly_data.append({
|
176 |
'تاریخ': date.strftime('%Y-%m-%d'),
|
177 |
'مزرعه': farm,
|
|
|
9 |
# احراز هویت Google Earth Engine
|
10 |
def authenticate_gee():
|
11 |
try:
|
|
|
12 |
credentials = ee.ServiceAccountCredentials(None, 'ee-esmaeilkiani13877-cfdea6eaf411.json')
|
13 |
ee.Initialize(credentials)
|
14 |
st.sidebar.success("اتصال به Google Earth Engine برقرار شد!")
|
|
|
20 |
@st.cache_data
|
21 |
def load_data():
|
22 |
try:
|
|
|
23 |
df = pd.read_csv('پایگاه داده (1).csv')
|
24 |
farm_coords = pd.read_csv('farm_coordinates.csv')
|
25 |
return df, farm_coords
|
|
|
37 |
{'name': row['نام']}
|
38 |
),
|
39 |
axis=1
|
40 |
+
).to_list()
|
41 |
)
|
42 |
start_date = (date - datetime.timedelta(days=3)).strftime('%Y-%m-%d')
|
43 |
end_date = (date + datetime.timedelta(days=3)).strftime('%Y-%m-%d')
|
|
|
54 |
reducer=ee.Reducer.mean(),
|
55 |
scale=10
|
56 |
).getInfo()['features']
|
57 |
+
return {v['properties']['name']: v['properties'].get('NDVI') for v in ndvi_values if 'name' in v['properties'] and 'NDVI' in v['properties']}
|
58 |
return {}
|
59 |
|
60 |
# دریافت نقشه NDVI برای یک مزرعه
|
|
|
169 |
for date in dates:
|
170 |
ndvi_values = get_ndvi_for_all_farms(date, farm_coords)
|
171 |
for farm, ndvi in ndvi_values.items():
|
172 |
+
if ndvi is not None:
|
173 |
weekly_data.append({
|
174 |
'تاریخ': date.strftime('%Y-%m-%d'),
|
175 |
'مزرعه': farm,
|