starplot icon indicating copy to clipboard operation
starplot copied to clipboard

Add Plotly Backend Support for Interactive Star Charts

Open skylook opened this issue 9 months ago • 1 comments

Is your feature request related to a problem? Please describe. Currently, starplot generates static star charts which limits the user interaction capabilities. When working with astronomical data visualization, being able to interact with the chart (zoom, pan, hover for details) would greatly enhance the user experience and data exploration capabilities.

Describe the solution you'd like I propose adding Plotly as an optional backend renderer for starplot. Specifically:

  • Implement a Plotly backend option alongside existing rendering methods
  • Enable interactive features such as:
    • Zoom and pan capabilities
    • Hover tooltips showing detailed star information
    • Dynamic view adjustments
  • Maintain the current API structure while adding Plotly-specific options

Describe alternatives you've considered

  • Using Bokeh: While it's another great interactive visualization library, Plotly has better community support and more extensive documentation for astronomical visualizations
  • Using D3.js: It would require more custom implementation work and may not have the out-of-box features that Plotly provides
  • Enhancing the current backend: This would require significant development effort to add interactive features

Additional context Plotly offers several advantages that make it ideal for this implementation:

  • Built-in support for scientific visualizations
  • Active community and extensive documentation
  • WebGL rendering support for handling large datasets
  • Easy export to HTML for web integration
  • Consistent behavior across different platforms

This feature would make starplot more versatile and useful for both educational and research purposes.

skylook avatar Apr 27 '25 11:04 skylook

I agree that interactive features can definitely improve the user experience of exploring data, but my original intent with Starplot was to automate the creation of static images. There are different sets of technical problems when creating a static image generator vs an interactive visualization, and I wanted to limit the scope of Starplot — at least in the beginning.

I would definitely be open to adding interactive features to Starplot, even if it’s through an optional backend/plugin. If you’re interested in helping with this, let me know! I won’t have time myself for awhile, cause of other projects and other features I want to add to Starplot first.

Thanks for your request!

steveberardi avatar Apr 30 '25 14:04 steveberardi