Skip to content
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

Plots.jl Refactor (goodbye PythonPlot) #114

Open
wants to merge 21 commits into
base: main
Choose a base branch
from

Conversation

argonaut22
Copy link
Collaborator

@argonaut22 argonaut22 commented Dec 16, 2024

This PR:

  • surgically excises the metastasized plt usage (so we're not installing a GB of python just to plot)
  • replaces it in all places with plt-like plotter, Plots.jl (see outputs.jl for extensive sample usage)
  • Splits outputs.jl into text_outputs.jl and plot_outputs.jl
  • ensures all of this is tested such that changes to data structure will show a break
  • closes Updating Plotting and Data Functionalities #103. noting that the show_plot/verbosity parameter is reserved for another PR

Note:

  • some TODO's are marked where the originally-intended functionality appears absent. Of note: label_bars() which is now replaced with simple legends in the plot
  • data IO tests are re-instated, broken tests are appropriately marked. some are /still/ commented out since they're dependent on the data struct handling task, but they're marked as TODO
  • there may be a better plotting backend to select that would allow direct copying from VScode/etc. Unclear what that is rn

Sample outputs:
image
image

… test of `Plots.jl` using `example_PRD.jl` which has its own issues vav keeping up to date with codebase changes
…e. Added Statsplots dependency (for groupedbar functionality)
…idying up + making things consistent. Tests in a passing state
Copy link

codecov bot commented Dec 16, 2024

Codecov Report

Attention: Patch coverage is 84.24153% with 107 lines in your changes missing coverage. Please review.

Project coverage is 78.76%. Comparing base (430cfd8) to head (9f766f8).
Report is 76 commits behind head on main.

Files with missing lines Patch % Lines
src/IO/output_plots.jl 82.54% 92 Missing ⚠️
src/utils/sensitivity.jl 0.00% 8 Missing ⚠️
src/aero/airfoil.jl 0.00% 4 Missing ⚠️
src/mission/odperformance.jl 0.00% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #114      +/-   ##
==========================================
+ Coverage   73.41%   78.76%   +5.34%     
==========================================
  Files          77       81       +4     
  Lines       13908    13442     -466     
==========================================
+ Hits        10211    10587     +376     
+ Misses       3697     2855     -842     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@argonaut22 argonaut22 marked this pull request as ready for review December 16, 2024 21:56
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

guessing this will have to change with Nico's PR about the payload range/woper updates

Copy link
Contributor

@aditeyashukla aditeyashukla left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great!
Will need updates once Wing/tail PR and Woper PR are merged
Happy to help for updates regarding the former

src/IO/outputs.jl Outdated Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Updating Plotting and Data Functionalities
3 participants