-
Notifications
You must be signed in to change notification settings - Fork 563
Add function to plot a model's incidence graph in Dulmage-Mendelsohn order #3207
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
Conversation
…se) dulmage-mendelsohn decomposition
|
Windows coverage failure appears unrelated. |
Coverage failures are, 99.99999% of the time, unrelated. (And also obnoxious.) |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3207 +/- ##
==========================================
- Coverage 88.40% 88.24% -0.16%
==========================================
Files 846 847 +1
Lines 95156 95402 +246
==========================================
+ Hits 84118 84189 +71
- Misses 11038 11213 +175
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
blnicho
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have one minor docstring edit but otherwise this looks good!
Summary/Motivation:
Thanks to a casual comment by @jeanpaulwatson, and because I've spent way too many hours reproducing these plots over and over, I'd like to add a method plot a model's incidence matrix in Dulmage-Mendelsohn order.
Changes proposed in this PR:
spy_dulmage_mendelsohnfunction that plots incidence matrix on Matplotlib Axes in Dulmage-Mendelsohn order.I've tried to automatically compute a

markersizethat seems to work for both small and large-ish systems. For a small model, we get something like:For a large-ish model, we get something like (with

include_wellconstrained=False):Legal Acknowledgement
By contributing to this software project, I have read the contribution guide and agree to the following terms and conditions for my contribution: