Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Try different representation of the plot (3d, latitudinal) #29

Open
jgieseler opened this issue Nov 11, 2022 · 5 comments
Open

Try different representation of the plot (3d, latitudinal) #29

jgieseler opened this issue Nov 11, 2022 · 5 comments
Labels
enhancement New feature or request

Comments

@jgieseler
Copy link
Owner

Right now, we only plot the heliographic equatorial plane, so radial distance projected to it and longitude.

  • A nice (and easy) addition would be to plot a sideview, showing the different latitudes of the spacecraft (with longitude projected to the plane).
  • Also worthwhile to check is actually using a 3d plot. Not sure how this works with Streamlit; maybe something else such as plotly or bokeh needs/can be used instead of matplotlib (see https://docs.streamlit.io/library/api-reference/charts for supported versions).
@jgieseler jgieseler added the enhancement New feature or request label Nov 11, 2022
@jgieseler
Copy link
Owner Author

jgieseler commented Jun 17, 2024

A fully rotatble & zoomable 3d plot using plotly has been introduced in the beta version of streamlit (not mentioned in the python package or example Notebook, yet). The function is called plot_3d(), but it's feature-wise not yet on pair with the classic plot() function:
newplot

Missing in this plot are the following plotting options:

Furthermore, the plotly 3d plot at the moment unfortunately is "losing" the axis descriptions if one zooms in or out too much. Because of that, there are right now two figures with two zoom levels embedded in the streamlit beta version - of course these should be combined into one for the final version.

@jgieseler
Copy link
Owner Author

Another interesting community suggestions has been to provide a fixed 2d plot that uses a fixed inclination angle and hints the latitudes by perpendicular lines to the ecliptic plane. A good example is the radar from Elite Dangerous:

449012576

@jgieseler
Copy link
Owner Author

jgieseler commented Jun 19, 2024

Connected to this via #60: Maybe SunpyPlotter from sunkit-pyvista is an alternative to produce 3d solarmach figures?

Anwser: pyvista is so far only indirectly supported by streamlit (cf. e.g. https://discuss.streamlit.io/t/stpyvista-show-pyvista-3d-visualizations-in-streamlit/31802/23), so right now it's probably not a good idea to rely on it.

@jgieseler
Copy link
Owner Author

Another interesting community suggestions has been to provide a fixed 2d plot that uses a fixed inclination angle and hints the latitudes by perpendicular lines to the ecliptic plane. A good example is the radar from Elite Dangerous:

449012576

I played a bit making such a plot with a modification to the current plot_3d function:
Solar-MACH_3D_2007-09-15_13-00_3D
The code changes are in the branch elite_map in 5a5b30d

@jgieseler
Copy link
Owner Author

Another interesting community suggestions has been to provide a fixed 2d plot that uses a fixed inclination angle and hints the latitudes by perpendicular lines to the ecliptic plane. A good example is the radar from Elite Dangerous:
449012576

I played a bit making such a plot with a modification to the current plot_3d function:

The code changes are in the branch elite_map in 5a5b30d

All the plotting changes are now in the regular pfss branch. Only thing is that they need to be activated manually (switch off x,y,z axis & grid, switch on vertical lines, rotate & tilt 3d figure). Question is whether it makes sense to have something like above as the default 3d view. 🤔

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant