Prioritization of UXarray analysis operators #46
Replies: 12 comments 54 replies
-
Global and zonal means (conservative and non-conservative) |
Beta Was this translation helpful? Give feedback.
-
Cross sections |
Beta Was this translation helpful? Give feedback.
-
Regridding to lat-lon |
Beta Was this translation helpful? Give feedback.
-
Gradients (derivatives) |
Beta Was this translation helpful? Give feedback.
-
I would add |
Beta Was this translation helpful? Give feedback.
-
plotting example I don't know if this is unrelated, but I've yet to see someone plot a proper raster plot of an unstructured grid, using python (prove me wrong!). I view this functionality as crucial, especially in the model development process. In NCL, it's as simple as feeding in the vertices of the mesh to the plot resources. See example NCL plot here for a spectral-element run. [Edited by Rob Jacob to turn into a suggestion] |
Beta Was this translation helpful? Give feedback.
-
@adamrher that is a good question. Datashader samples the data at a rate determined by the resolution of the output device. That's how it achieves performance with large data. However, the notebook and images in the example are pre-rendered. When you zoom in on them the resampling is performed on the image, not the data. If you download the notebook and run it on your own machine you'll see that as you zoom in more and detail should be revealed, and the blocky artifacts should go away. |
Beta Was this translation helpful? Give feedback.
-
@whannah1 the coastlines are not part of the MPAS data. I'm guessing, but don't know for sure, that matplotlib is rendering them under the hood. Re preserving the polygon shape: virtually all low-level raster graphics packages are incapable of rendering polygons other than triangles: n-gons, where n is greater than 3 are decomposed into triangles, and the triangles are rasterized. Polygonal outlines can be drawn as collections of line segments. Datashader, to the best of my knowledge, doesn't draw lines. If drawing the mesh (outlines of the cells that make up the grid) is important, that is something we'll have to explore. Matplotlib can do it, but the performance would be unusable for larger data. |
Beta Was this translation helpful? Give feedback.
-
Minimum or maximum value within an arbitrary distance of an arbitrary lon, lat point. This is useful for tropical cyclone tracking and analysis. For example, what is the maximum wind speed within 300 km of 88.2W, 29N? |
Beta Was this translation helpful? Give feedback.
-
Hi, |
Beta Was this translation helpful? Give feedback.
-
That would be great if you could draft a PR and a branch with my notebook.
Are the .subset family of functions available yet, or are they still a work
in progress?
…On Tue, Jan 2, 2024 at 4:19 PM Philip Chmielowiec ***@***.***> wrote:
#616 <#616> implements isel for
the Grid, UxDataArray and UxDataset
I haven't looked into a where method, but the .subset family of functions
might handle the cases you are working with.
I can create a draft PR and a branch with your notebook & we can
colaborate through that if you'd like.
—
Reply to this email directly, view it on GitHub
<#46 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AEIPI2HZZH6BA4U2TBAKBX3YMSIYPAVCNFSM5V3ZPAJKU5DIOJSWCZC7NNSXTOKENFZWG5LTONUW63SDN5WW2ZLOOQ5TOOJZG44DSMQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
After discussing with @clyne yesterday, I realized a missing functionality: streamlines or curly vectors. This feature would be particularly useful for plotting wind speed and direction, similar to this NCL example. |
Beta Was this translation helpful? Give feedback.
-
Hi folks!
This topic could be very much helpful for us to discuss prioritization to implement the analysis operators so that we can ship the most time-sensitively needed unstructured grid functions the earliest. To allow folks to upvote any individual function (which could kind of show us consensus on most commonly wanted tools?), I think it is better to list each function (with or without additional comments, description) in a separate comment.
Below are some functions as an initial list; please feel free to upvote and/or comment any of them, or add your own priorities for other functions.
In addition, please also mention folks/organizations from the community as you see fit to snow-ball the input. I am starting with an initial list from the Raijin collaborators, issue/discussion creators so far, etc:
@andrewgettelman @anissa111 @bjorn-stevens @brianpm @cecilehannay @ChrisBarker-NOAA @clyne @dcherian @falkojudt @iuryt @michaelavs @paullric @rabernat @rajeeja @rljacob @whannah1 @zarzycki
Beta Was this translation helpful? Give feedback.
All reactions