-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replacing GMT/PyGMT backend by pure Matplotlib backend #268
Commits on May 8, 2024
-
Defining projection helper function for Lune and Sphere data visualization.
Configuration menu - View commit details
-
Copy full SHA for 9dca53a - Browse repository at this point
Copy the full SHA 9dca53aView commit details -
Helper function for lune and sphere arcs
Define function to compute intermediate points along a line between specific coordinates pairs. This will make sure the arcs are correctly bent in the projected coordinate system (hammer projection).
Configuration menu - View commit details
-
Copy full SHA for 2b3aa16 - Browse repository at this point
Copy the full SHA 2b3aa16View commit details -
Lune arc definition and plotting helper functions
Hard-coding lune arc coordinates for lambda1,2,3 = 0. Lines are populated by _compute_center_of_minimum_distance and plotted with _plot_lune_arcs using the hammer projection.
Configuration menu - View commit details
-
Copy full SHA for 932f937 - Browse repository at this point
Copy the full SHA 932f937View commit details -
Sphere arcs and label definition and plotting helper functions
Hard-coding sphere meridians for W - S - E directions. Lines are populated by _compute_center_of_minimum_distance and plotted with _plot_sphere_arcs using the hammer projection. Labels are added with _plot_directions_text.
Configuration menu - View commit details
-
Copy full SHA for 32c26e1 - Browse repository at this point
Copy the full SHA 32c26e1View commit details -
Lune axes initialization helper function
This function returns a figure and axes object with the lune frame, ready for plotting used by other functions. It uses the helper functions previously defined, and the hammer projection function.
Configuration menu - View commit details
-
Copy full SHA for 9074dec - Browse repository at this point
Copy the full SHA 9074decView commit details -
Sphere axes initialization helper function
This function returns a figure and axes object with the unit sphere frame, ready for plotting used by other functions. As with the lune, It uses the helper functions previously defined, and the hammer projection function.
Configuration menu - View commit details
-
Copy full SHA for 0498014 - Browse repository at this point
Copy the full SHA 0498014View commit details -
Configuration menu - View commit details
-
Copy full SHA for d6e3a92 - Browse repository at this point
Copy the full SHA d6e3a92View commit details -
Configuration menu - View commit details
-
Copy full SHA for d0fc33f - Browse repository at this point
Copy the full SHA d0fc33fView commit details -
Adding main lune plotting routine
Pure matplotlib implementation of the Lune plot. It uses the pre-defined helper functions implemented in previous commits. The lune plot has three different modes, contour being the equivalent to the current GMT plot. colormesh and scatter mode are implemented with sampling method and polarity misfit, respectively.
Configuration menu - View commit details
-
Copy full SHA for ead4fa6 - Browse repository at this point
Copy the full SHA ead4fa6View commit details -
Added main force sphere plotting routine
Fairly similar in design to the lune plot backend. Disclaimer: it has been tested but not to the same extent as the lune plot. Main features seems stable, but I will review if anything comes up.
Configuration menu - View commit details
-
Copy full SHA for 447c6e5 - Browse repository at this point
Copy the full SHA 447c6e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b99e90 - Browse repository at this point
Copy the full SHA 2b99e90View commit details
Commits on May 9, 2024
-
Implemented in-house beachball plots
Implemented pure-matplotlib moment tensor plot. It is based on the computation of the radiation coefficient on a 3D half-sphere, and projected on the 2D plane with lambert azimuthal equal area projection. Currently supports waveform plots and base beachball plot with station and piercing points.
Configuration menu - View commit details
-
Copy full SHA for 27cd73e - Browse repository at this point
Copy the full SHA 27cd73eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 38576e4 - Browse repository at this point
Copy the full SHA 38576e4View commit details
Commits on May 15, 2024
-
Added multi-beachball plotting functionality to _plot_beachball_matpl…
…otlib This commit integrates two different features: Adding the option to input several moment tensors to plot on a map fashion (used in lune plot and depth plot). Adding a "Level of detail" kind of optimization to adapt rendering speed depending on the size of the plotted beachball (single figure, or multiple beachball on a plot).
Configuration menu - View commit details
-
Copy full SHA for e8b0db0 - Browse repository at this point
Copy the full SHA e8b0db0View commit details -
Added anti-aliasing option for contourf call and minor saving changes.
Also removed debug prints.
Configuration menu - View commit details
-
Copy full SHA for 79fff97 - Browse repository at this point
Copy the full SHA 79fff97View commit details -
Implemented beachball plot for depth/misfit using matplotlib
The plot requires using a double axes trick, as the beachball pattern are not converted into markers or symbol, they can be stretched if the axes are not the same order of magnitude. A secondary axis with unit extent (-1,1 / -1,1) is overlayed on the base figure, and the coordinates of the points (depths/values) are re-scaled accordingly, so that the beachballs are always perfect circles.
Configuration menu - View commit details
-
Copy full SHA for 2a1e3e7 - Browse repository at this point
Copy the full SHA 2a1e3e7View commit details -
Merged main branch into uq_matplotlib to bring header changes into th…
…is feature branch I wanted to have the feature branch with the new header modification. This is mostly as I will use the uq_matplotlib branch for the 2024 MTUQ SCOPED workshop, before opening a Pull Request.
Configuration menu - View commit details
-
Copy full SHA for 5b59abd - Browse repository at this point
Copy the full SHA 5b59abdView commit details
Commits on Jun 4, 2024
-
Changed title and cbar policies
Passed title back as a kwarg and added the possibility to modify the colorbar label (which I have set to l2_misfit as default value). Reproduces all the DetailedAnalysis.py plots.
Configuration menu - View commit details
-
Copy full SHA for 6cf078b - Browse repository at this point
Copy the full SHA 6cf078bView commit details
Commits on Jun 5, 2024
-
Enabling matplotlib force plot as default backend
Changed the call of _plot_force() to actually use the backend variable instead of the hardcoded _plot_force_gmt() function. Use the "levels" variable in the matplotlib backend instead of the fixed value as 126 (which was for testing purposes).
Configuration menu - View commit details
-
Copy full SHA for 142bc44 - Browse repository at this point
Copy the full SHA 142bc44View commit details
Commits on Jun 8, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7263f41 - Browse repository at this point
Copy the full SHA 7263f41View commit details -
Configuration menu - View commit details
-
Copy full SHA for 929dd10 - Browse repository at this point
Copy the full SHA 929dd10View commit details -
Modified beachball plot to have a unique plot.
The beachball plot now support both the "Big beachball" mode as well as polarity plotting. Some functions from the beachball plotting engine have been moved to utilities.
Configuration menu - View commit details
-
Copy full SHA for abd10d7 - Browse repository at this point
Copy the full SHA abd10d7View commit details -
Implemented matplotlib latlon misfit plot.
With improvements mades on the beachball plot, the scaling factor of various figures were also updated, and should now be consistent regardless of the axes extents. (The scale being automatically adjusted to account for the axes extent).
Configuration menu - View commit details
-
Copy full SHA for 7530751 - Browse repository at this point
Copy the full SHA 7530751View commit details -
Configuration menu - View commit details
-
Copy full SHA for f227929 - Browse repository at this point
Copy the full SHA f227929View commit details -
Changed plotting type for polarity misfit on the lune.
This now takes advantage of the dedicated polarity mode of the matplotlib backend.
Configuration menu - View commit details
-
Copy full SHA for 27a16ac - Browse repository at this point
Copy the full SHA 27a16acView commit details
Commits on Jun 11, 2024
-
Configuration menu - View commit details
-
Copy full SHA for a48c3e9 - Browse repository at this point
Copy the full SHA a48c3e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 68aeca4 - Browse repository at this point
Copy the full SHA 68aeca4View commit details
Commits on Jul 1, 2024
-
Increased default marker size for better readability.
Configuration menu - View commit details
-
Copy full SHA for c721811 - Browse repository at this point
Copy the full SHA c721811View commit details -
Fixed nomenclature in backend beachball plot
The latitude and longitude were swapped in scatter mode of moment tensor plot. I somehow circumvented the issue by also swapping the inputs which hid the discrepancy until this fix. All MT tradeoffs figures have been re-tested.
Configuration menu - View commit details
-
Copy full SHA for 9b9d303 - Browse repository at this point
Copy the full SHA 9b9d303View commit details
Commits on Jul 5, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 09e3e81 - Browse repository at this point
Copy the full SHA 09e3e81View commit details
Commits on Aug 1, 2024
-
Implemented warning message and reorganization
Added a warning message that displays when the script is used. _plot_latlon_matplotlib has been moved to be right after _plot_depth_matplotlib. Implemented warning message for beachball plotting. Added a custom warning message for beachball plot, since it is not a "conventional" implementation a-la psmeca.
Configuration menu - View commit details
-
Copy full SHA for f808720 - Browse repository at this point
Copy the full SHA f808720View commit details
Commits on Aug 19, 2024
-
Added parabola fit to the depth plot
I added a parabola to the depth plot, with an estimate of the best fitting depth at the minimum of the parabola. It will print the best value and the ± error from a 5% uncertainty threshold.
Configuration menu - View commit details
-
Copy full SHA for 0c61540 - Browse repository at this point
Copy the full SHA 0c61540View commit details -
Remove uncessary cluge for moment tensor orientation with respect to …
…the 3D projection. I originally had the axes for the sphere projection be separate from the moment tensor
Configuration menu - View commit details
-
Copy full SHA for 36404ae - Browse repository at this point
Copy the full SHA 36404aeView commit details
Commits on Aug 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 91784c9 - Browse repository at this point
Copy the full SHA 91784c9View commit details -
Updated code generator so that it fits the changes in DetailedAnalysi…
…s.py and Waveforms+Polarities.py
Configuration menu - View commit details
-
Copy full SHA for a70846b - Browse repository at this point
Copy the full SHA a70846bView commit details