Add Spotlight integration for interactive visualization#1205
Add Spotlight integration for interactive visualization#1205Surjasa wants to merge 5 commits intoweecology:mainfrom
Conversation
|
This looks great. The tests are quite extensive, let's see if we can reduce the size fo the PR. If your using copilot or other code-assist, it can be really verbose and add lots of pieces. For example, just collapse the tests into one tests/test_spotlight.py |
|
Thank you for your review. As per your feedback, I have collapsed the tests into a single file |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1205 +/- ##
==========================================
- Coverage 87.35% 85.97% -1.38%
==========================================
Files 24 26 +2
Lines 2981 3159 +178
==========================================
+ Hits 2604 2716 +112
- Misses 377 443 +66
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@bw4sz I’ve resolved the previous doc test coverage issues and added the missing tests to meet the patch coverage requirements. The new tests increase coverage to 88%, and all failing checks have been addressed. |
|
@henrykironde any idea why github actions didn't run here? Not sure if I can manually fire it?, just looks like docs and pre-commit hit. @Surjasa can you rebase main and we can get this merged. Thanks for your contribution. |
|
With a rebase we shall be able to have them run. |
434ed4d to
ce382cf
Compare
|
@bw4sz I've rebased on main as requested and fixed the CLI functionality that got lost during the conflict resolution. Here, the failing pre-commit check is just an import order issue in main.py that was already there - not related to the spotlight changes. now, it is ready for review! |
|
yes, thanks, @henrykironde is fixing the pre-commit, small error that I probably made in merging another PR. This is ready to merge once that is done. |
- Add gallery export and spotlight subcommands to CLI - Restore functionality lost during rebase conflict resolution - Include all gallery export options and spotlight packaging - Fix CLI imports and structure
303ffe4 to
c9c462b
Compare
|
Hi @bw4sz, I've rebased on the latest main branch. This is ready for final review. |
What’s Implemented:
A complete integration between DeepForest and Renumics Spotlight, enabling users to visualize annotations, predictions, and datasets interactively.
Core Features:
view_with_spotlight()for main visualization workflow.df.spotlight()for convenient usage within pandas workflows.API Overview
Option 1: Wrapper Function (Primary)
Option 2: DataFrame Accessor (Convenience)
Advanced Capabilities
Implementation Details:
New Files
src/deepforest/visualize/spotlight_adapter.py– Core Spotlight integration.src/deepforest/visualize/spotlight_export.py– Gallery-to-Spotlight packaging utilities.docs/getting_started/spotlight.md– Getting Started guide with examples and screenshots.docs/user_guide/examples/demo_spotlight.py– Demonstration script.Modified Files:
src/deepforest/visualize/__init__.py– Exposed new public API symbols.src/deepforest/scripts/cli.py– Added new gallery spotlight command.Testing and Quality:
Documentation:
Alignment with Roadmap:
Summary:
This implementation completes the requested Spotlight integration for DeepForest.
It provides a clean, well-tested, and production-ready workflow for interactive dataset visualization, fully aligned with the maintainer’s roadmap and project standards.
Fixes #1172