GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — MultiNorm class by trygvrad · Pull Request #29876 · matplotlib/matplotlib

Conversation

@trygvrad

@trygvrad trygvrad commented Apr 6, 2025

Copy link
Copy Markdown
Contributor

PR summary

This PR continues the work of #28658 and #28454, aiming to close #14168. (Feature request: Bivariate colormapping)

This is part one of the former PR, #29221. Please see #29221 for the previous discussion

Features included in this PR:

  • A MultiNorm class. This is a subclass of colors.Normalize and holds n_variate norms.
  • Testing of the MultiNorm class

Features not included in this PR:

  • changes to colorizer.py needed to expose the MultiNorm class
  • Exposes the functionality provided by MultiNorm together with BivarColormap and MultivarColormap to the plotting functions axes.imshow(...), axes.pcolor, and `axes.pcolormesh(...)
  • Testing of the new plotting methods
  • Examples in the docs

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@github-actions github-actions Bot added topic: color/color & colormaps topic: transforms and scales labels Apr 6, 2025
This was referenced Apr 6, 2025
Preparations for multivariate plotting #29877
Closed
Multivariate plotting in imshow, pcolor and pcolormesh #29221
Closed
oscargus
oscargus reviewed Apr 6, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

oscargus
oscargus reviewed Apr 6, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

oscargus
oscargus reviewed Apr 6, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed Apr 7, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed Apr 7, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed Apr 7, 2025
View reviewed changes
Comment thread lib/matplotlib/scale.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@github-actions github-actions Bot removed the topic: transforms and scales label Apr 10, 2025
QuLogic
QuLogic reviewed Apr 17, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.pyi Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.pyi Resolved

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad
trygvrad force-pushed the multivariate-plot-prapare branch from 55b85e3 to f42d65b Compare April 17, 2025 15:18
anntzer
anntzer reviewed May 1, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed May 1, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed May 1, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed May 1, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

anntzer
anntzer reviewed May 1, 2025
View reviewed changes

@anntzer anntzer left a comment

Copy link
Copy Markdown
Contributor

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.

Just some minor points, plus re-pinging @timhoffm in case he has an opinion re: n_input / input_dims naming?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@trygvrad

trygvrad commented May 4, 2025

Copy link
Copy Markdown
Contributor Author

Thank you for the feedback @anntzer !
Hopefully we can hear if @timhoffm has any thoughts on n_input / input_dims naming within the coming week.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@timhoffm

timhoffm commented May 5, 2025

Copy link
Copy Markdown
Member

See #29876 (comment)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad

trygvrad commented May 7, 2025

Copy link
Copy Markdown
Contributor Author

Thank you @timhoffm
The PR should now be as we agreed (#29876 (comment)) :)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

QuLogic
QuLogic reviewed May 23, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad

trygvrad commented Jun 1, 2025

Copy link
Copy Markdown
Contributor Author

@QuLogic Thank you again and apologies for my tardiness (I was sick)
@timhoffm Do you think you could approve this PR now?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

timhoffm
timhoffm reviewed Jun 2, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

QuLogic
QuLogic reviewed Jun 4, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad
trygvrad force-pushed the multivariate-plot-prapare branch from 6b86d63 to 32247f5 Compare June 4, 2025 21:01
@trygvrad trygvrad mentioned this pull request Jun 6, 2025
Creation of the Norm Protocol #30149
Closed
@trygvrad

trygvrad commented Jun 6, 2025

Copy link
Copy Markdown
Contributor Author

This is on hold until we sort out #30149 (Norm Protocol)
see #29876 (comment)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@story645 story645 added the status: waiting for other PR label Jun 6, 2025
@trygvrad trygvrad mentioned this pull request Jun 15, 2025
Abstract base class for Normalize #30178
Merged
@trygvrad
Update colors.pyi
2d9d00c
@trygvrad

trygvrad commented Aug 1, 2025

Copy link
Copy Markdown
Contributor Author

I changed vmin, vmax and clip to only accept iterables or None.

It dawned on me that it will be useful to allow None, with the behavior that it does not modify the vmin/vmax/clip on the constituent norms. This will be useful for use as a default, but also be useful for users that want to combine multiple norms into a MultiNorm without modifying the limits of the norms.

@timhoffm @anntzer I had made these changes, but actually committing them had slipped my mind. They are in now 😅

I'm on vacation now, so my schedule is a bit scrambled. @QuLogic I'll take a look at the rest of your comments soon :)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

timhoffm
timhoffm reviewed Aug 1, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@anntzer

anntzer commented Aug 1, 2025

Copy link
Copy Markdown
Contributor

@timhoffm @anntzer I had made these changes, but actually committing them had slipped my mind. They are in now 😅

I'm on vacation now, so my schedule is a bit scrambled. @QuLogic I'll take a look at the rest of your comments soon :)

Sorry I dropped the ball on this. I can try to have a look but not before the middle of the month or so.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

trygvrad added 2 commits August 5, 2025 17:00
@trygvrad
change to handling of bad norm names in MultiNorm
68c5527
@trygvrad
Update colors.py
aa99db3
QuLogic
QuLogic reviewed Aug 7, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.pyi Resolved

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad @QuLogic
Apply suggestions from code review
f61c06b
Co-authored-by: Elliott Sales de Andrade <[email protected]>
@trygvrad
trygvrad force-pushed the multivariate-plot-prapare branch from ff2eb20 to f61c06b Compare August 7, 2025 21:25
@trygvrad

trygvrad commented Aug 14, 2025

Copy link
Copy Markdown
Contributor Author

@QuLogic all the comments should have been addressed now, do you have the time to take another pass at it?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@QuLogic

QuLogic commented Aug 15, 2025

Copy link
Copy Markdown
Member

@QuLogic all the comments should have been addressed now, do you have the time to take another pass at it?

There are still a couple of comments that are unresolved/have no reply, at least.

trygvrad reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad
change minimum length of multiNorm to 1.
c0a0d6d
@trygvrad

trygvrad commented Aug 15, 2025

Copy link
Copy Markdown
Contributor Author

@QuLogic @story645 thank you for your comments and patience on this, I believe i have addressed all the comments now, but please correct me again if there are some I have overlooked. Otherwise I look forward to your future comments :)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

QuLogic
QuLogic reviewed Aug 16, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/tests/test_colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

QuLogic
QuLogic reviewed Aug 16, 2025
View reviewed changes
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad @QuLogic
Apply suggestions from code review
3267fe9
Co-authored-by: Elliott Sales de Andrade <[email protected]>
@trygvrad
trygvrad force-pushed the multivariate-plot-prapare branch from 486a58f to 3267fe9 Compare August 16, 2025 20:42
@QuLogic QuLogic added this to the v3.11.0 milestone Aug 19, 2025
QuLogic
QuLogic reviewed Aug 20, 2025
View reviewed changes

@QuLogic QuLogic left a comment

Copy link
Copy Markdown
Member

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.

Just a minor last thing,

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread lib/matplotlib/colors.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/matplotlib/colors.pyi Resolved

Uh oh!

There was an error while loading. Please reload this page.

@trygvrad
Apply suggestions from @QuLogic
a9aac0d
@trygvrad

trygvrad commented Aug 20, 2025

Copy link
Copy Markdown
Contributor Author

Just a minor last thing,

Thank you @QuLogic !

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

QuLogic
QuLogic approved these changes Aug 20, 2025
View reviewed changes

@QuLogic QuLogic left a comment

Copy link
Copy Markdown
Member

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.

Were you expecting a squash merge?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@trygvrad

trygvrad commented Aug 20, 2025

Copy link
Copy Markdown
Contributor Author

Were you expecting a squash merge?

Yes, I believe a squash merge would be most suitable

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@QuLogic
QuLogic merged commit 3a8ad1d into matplotlib:main Aug 20, 2025
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Bivariate and Multivariate Colormapping Aug 20, 2025
@QuLogic

QuLogic commented Aug 20, 2025

Copy link
Copy Markdown
Member

Thanks for working your way through this long process.

timhoffm, trygvrad, Migelo, and story645 reacted with thumbs up emoji
All reactions
  • 👍 4 reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@Migelo Migelo mentioned this pull request Aug 21, 2025
add path_effects example to README trygvrad/colorstamps#3
Merged
This was referenced Aug 25, 2025
removed test_image_cursor_formatting() #30465
Merged
No need to sanitize extrema in Colorizer.set_clim #30470
Merged
@trygvrad trygvrad mentioned this pull request Sep 3, 2025
Update Colorizer/ColorizingArtist to work with MultiNorm #30511
Merged
1 task done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@story645 story645 story645 left review comments
@anntzer anntzer anntzer left review comments
@jklymak jklymak jklymak left review comments
@timhoffm timhoffm timhoffm approved these changes
@oscargus oscargus oscargus left review comments
@QuLogic QuLogic QuLogic approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

Documentation: API files in lib/ and doc/api topic: color/color & colormaps

Projects

Bivariate and Multivariate Colormapping
Status: Done

Milestone

v3.11.0

Development

Successfully merging this pull request may close these issues.

Feature request: Bivariate colormapping

Uh oh!

There was an error while loading. Please reload this page.

7 participants

@trygvrad @timhoffm @anntzer @QuLogic @story645 @jklymak @oscargus
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.