intake / xrviz

Interactive visualisation interface for Xarrays
https://xrviz.readthedocs.io
BSD 3-Clause "New" or "Revised" License
105 stars 21 forks source link

Xrviz + ocean simulations : vertical section #73

Open tivincent opened 3 years ago

tivincent commented 3 years ago

Hello !

I am working with 4D ocean simulations outputs (dimension : lat/lon, level, time)

A useful 2D-plot could be a vertical section along a specific line. It needs to interpolate the data on the vertical (if sigma levels). (And so, it will be also possible to have a real vertical profile (curve line) for a specific point, in case of sigma).

Another useful need could be to be able to load another datasets in order to create comparisons figures. For example, in-situ data at a station could plot on the 1D-plot in order to compare it with simulated data, etc..

Well, I am thinking to start with xrviz and try to add such features... ;)

Thanks for any help ! Vincent

martindurant commented 3 years ago

Adding a tool to select a 1D line on the current plot is very doable with current hvplot tooling. Plotting the section or 1D aggregate on that line will involve interpolation of the original data, so not so straight-forward. You are most welcome to have a go!

As to multiple datasets, this is a tricky thing to lay out as we are already crowding the available space. Perhaps you can come up with outlines of how it would look? Note that the Panel based widgets were already taking some noticeable time to render themselves, but the situation may have improved within the Panel code.

tivincent commented 3 years ago

For vertical section, ok, I think I will start working on it. For multiple datasets : in a first step, just loading csv files at one geo point should not be too heavy i think. I imagine another tab (in control.py) in order to manage the load of such files (with panel.widgets.FileSelector ?) and propose for example some checkbox (or list) in order to plot it or not on the 1D plot (and in this case, the point will be automatically chosen by using the lat/lon info of these dataset)

To load another gridded datasets, I imagine for example: 2 2D plot on a same row, and multiple line of a 1D plot. About the time to render, indeed, i think i should tested it before !

I propose that I could start working on a few things and propose you this work. But I just have to tell that I am not a python specialist ;)

martindurant commented 3 years ago

I am, of course, happy to see any contribution you propose. Obviously, starting with the simplest part first is likely to be best, and help you assess how much time the more complicated parts might take.