Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Improve docs on contourf extend#13047

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged

Conversation

@timhoffm
Copy link
Member

PR Summary

Based on#13038 I've rewritten the docstring forcontourfextend to better explain how to use it.

@timhoffmtimhoffm added this to thev3.0.3 milestoneDec 25, 2018
@jklymak
Copy link
Member

This seems fine, but isn’t the underlying issue that the contour is not being updated automatically?

@timhoffm
Copy link
MemberAuthor

This seems fine, but isn’t the underlying issue that the contour is not being updated automatically?

I don‘t know if that‘s possible. Does the cmap know about the associated scalar mappable? Otherwise there‘s no way that it can notify the QuadContourSet that it needs to update.

cs = plt.contourf(h, levels=[10, 30, 50],
colors=['#808080', '#A0A0A0', '#C0C0C0'], extend='both')
cs.cmap.set_over('red')
Copy link
Member

Choose a reason for hiding this comment

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

It is probably better to show updating the color map before creating the contour and then passing that in tocontourf. I think that is a bit for idiomatic and does not expose this updating edge-case in the examples.

Copy link
Member

Choose a reason for hiding this comment

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

Ah, the point is we are creating the colormap on-the-fly so can not do that.

We have not noticed the lack of update on images because we unconditionally consult the colormap every time we draw.

Copy link
MemberAuthor

@timhoffmtimhoffmDec 25, 2018
edited
Loading

Choose a reason for hiding this comment

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

Updating aQuadContourSet on each draw (to get automatic updates and the same behavior as with images) would essentially mean that we have to run the full code ofchanged(). Not quite sure if we want to do this.

I'm just being defensive here and clearly document the current behavior.

Copy link
Member

Choose a reason for hiding this comment

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

I agree this is the conservative path here.

@jklymak
Copy link
Member

I don‘t know if that‘s possible. Does the cmap know about the associated scalar mappable? Otherwise there‘s no way that it can notify the QuadContourSet that it needs to update.

I guess not. I wonder if what is actually needed is acs.set_over,cs.set_under method if users really need to do this after the fact?

@timhoffm
Copy link
MemberAuthor

timhoffm commentedDec 29, 2018
edited
Loading

I guess not.cs.set_under and similar seem counter-intuitive, when there‘s already acs.cmap.set_under with a different behavior. It‘s not obvious that one can use one but not the other. That would be my least favorite solution if we‘re going to change the API.

Other possible API changes: It‘s actually not reasonable to define the over/under colors at another time compared to the regular colors. Therefore one could:

  • add additional kwargs for over/under to contourf, or
  • Make it reasonably simple to create a cmap and norm for a discrete set of colors and boundaries. These could then be supplied to contourf.

@timhoffmtimhoffmforce-pushed thedoc-contourf-extend-cmap branch from5d5eabd to8ebdfb1CompareJanuary 6, 2019 19:14
@timhoffmtimhoffmforce-pushed thedoc-contourf-extend-cmap branch from8ebdfb1 tobb4b272CompareJanuary 6, 2019 22:55
@timhoffm
Copy link
MemberAuthor

timhoffm commentedJan 10, 2019
edited
Loading

For now, I'd leave this as is and just clearly document the current behavior. This is what this PR is about. Everything else is beyond the scope of the PR (and not a battle I want to fight right now).

So, by me, the PR is ready to go in.

Note: Travis failure is due to#13137 and unrelated to this PR.

@tacaswelltacaswell merged commit6b3c015 intomatplotlib:masterJan 14, 2019
meeseeksmachine pushed a commit to meeseeksmachine/matplotlib that referenced this pull requestJan 14, 2019
@timhoffmtimhoffm deleted the doc-contourf-extend-cmap branchJanuary 15, 2019 20:24
dstansby added a commit that referenced this pull requestJan 20, 2019
…047-on-v3.0.xBackport PR#13047 on branch v3.0.x (Improve docs on contourf extend)
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@tacaswelltacaswelltacaswell left review comments

Assignees

No one assigned

Projects

None yet

Milestone

v3.0.3

Development

Successfully merging this pull request may close these issues.

4 participants

@timhoffm@jklymak@tacaswell@QuLogic

[8]ページ先頭

©2009-2025 Movatter.jp