Spaces:
Sleeping
Sleeping
Tracy André
commited on
Commit
·
d1a6a46
1
Parent(s):
8b09855
updated
Browse files- mcp_server.py +3 -7
- requirements.txt +2 -1
- test_rangeslider.py +36 -0
mcp_server.py
CHANGED
|
@@ -92,15 +92,11 @@ analyzer = WeedPressureAnalyzer()
|
|
| 92 |
def analyze_herbicide_trends(years_range, plot_filter):
|
| 93 |
"""Analyze herbicide usage trends over time."""
|
| 94 |
try:
|
| 95 |
-
#
|
| 96 |
if isinstance(years_range, list) and len(years_range) == 2:
|
| 97 |
years = list(range(int(years_range[0]), int(years_range[1]) + 1))
|
| 98 |
-
elif isinstance(years_range, (int, float)):
|
| 99 |
-
years = [int(years_range)]
|
| 100 |
else:
|
| 101 |
-
years = list(range(
|
| 102 |
-
|
| 103 |
-
# Debug line removed for production
|
| 104 |
|
| 105 |
ift_data = analyzer.calculate_herbicide_ift(years=years)
|
| 106 |
|
|
@@ -307,7 +303,7 @@ def create_mcp_interface():
|
|
| 307 |
|
| 308 |
with gr.Row():
|
| 309 |
with gr.Column():
|
| 310 |
-
years_slider = gr.
|
| 311 |
minimum=2014,
|
| 312 |
maximum=2025,
|
| 313 |
value=[2020, 2025],
|
|
|
|
| 92 |
def analyze_herbicide_trends(years_range, plot_filter):
|
| 93 |
"""Analyze herbicide usage trends over time."""
|
| 94 |
try:
|
| 95 |
+
# RangeSlider retourne toujours une liste [start, end]
|
| 96 |
if isinstance(years_range, list) and len(years_range) == 2:
|
| 97 |
years = list(range(int(years_range[0]), int(years_range[1]) + 1))
|
|
|
|
|
|
|
| 98 |
else:
|
| 99 |
+
years = list(range(2020, 2026)) # Par défaut 2020-2025
|
|
|
|
|
|
|
| 100 |
|
| 101 |
ift_data = analyzer.calculate_herbicide_ift(years=years)
|
| 102 |
|
|
|
|
| 303 |
|
| 304 |
with gr.Row():
|
| 305 |
with gr.Column():
|
| 306 |
+
years_slider = gr.RangeSlider(
|
| 307 |
minimum=2014,
|
| 308 |
maximum=2025,
|
| 309 |
value=[2020, 2025],
|
requirements.txt
CHANGED
|
@@ -1,4 +1,5 @@
|
|
| 1 |
-
gradio[mcp]>=5.46.
|
|
|
|
| 2 |
numpy>=1.24.0
|
| 3 |
plotly>=5.0.0
|
| 4 |
datasets>=2.14.0
|
|
|
|
| 1 |
+
gradio[mcp]>=5.46.0
|
| 2 |
+
pandas>=2.0.0
|
| 3 |
numpy>=1.24.0
|
| 4 |
plotly>=5.0.0
|
| 5 |
datasets>=2.14.0
|
test_rangeslider.py
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""
|
| 2 |
+
Test du RangeSlider corrigé
|
| 3 |
+
"""
|
| 4 |
+
|
| 5 |
+
from mcp_server import analyze_herbicide_trends
|
| 6 |
+
|
| 7 |
+
def test_rangeslider():
|
| 8 |
+
"""Test avec différents formats de RangeSlider"""
|
| 9 |
+
print("🧪 Test du RangeSlider corrigé...")
|
| 10 |
+
|
| 11 |
+
# Test 1: Format RangeSlider normal
|
| 12 |
+
print("\nTest 1: RangeSlider [2020, 2024]")
|
| 13 |
+
fig, summary = analyze_herbicide_trends([2020, 2024], "Toutes")
|
| 14 |
+
if fig is not None:
|
| 15 |
+
print("✅ Succès avec RangeSlider")
|
| 16 |
+
else:
|
| 17 |
+
print("❌ Erreur:", summary)
|
| 18 |
+
|
| 19 |
+
# Test 2: Format RangeSlider avec une seule année
|
| 20 |
+
print("\nTest 2: RangeSlider [2023, 2023]")
|
| 21 |
+
fig, summary = analyze_herbicide_trends([2023, 2023], "Toutes")
|
| 22 |
+
if fig is not None:
|
| 23 |
+
print("✅ Succès avec une seule année")
|
| 24 |
+
else:
|
| 25 |
+
print("❌ Erreur:", summary)
|
| 26 |
+
|
| 27 |
+
# Test 3: Format RangeSlider avec parcelle spécifique
|
| 28 |
+
print("\nTest 3: RangeSlider [2022, 2024] avec parcelle")
|
| 29 |
+
fig, summary = analyze_herbicide_trends([2022, 2024], "Champ ferme W du sol")
|
| 30 |
+
if fig is not None:
|
| 31 |
+
print("✅ Succès avec parcelle spécifique")
|
| 32 |
+
else:
|
| 33 |
+
print("❌ Erreur:", summary)
|
| 34 |
+
|
| 35 |
+
if __name__ == "__main__":
|
| 36 |
+
test_rangeslider()
|