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

Add explicit converter setting to Axis#28970

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

ksunden
Copy link
Member

Closes#19229

PR summary

Adds an API to explicitly set the converter for an Axis.

Once explicitly set, the implicit machinery will not override the converter.
Previously (and still, if not explicitly set), the converter would be reset each time new data was added, possibly setting to something incompatible with previously provided data.

You cannot reset the converter once explicitly provided (except by clearing the axis entirely).
A warning is provided if implicitly set and being set to something different.

PR checklist

@jklymak
Copy link
Member

Does this also need aget_converter?

@tacaswelltacaswell added this to thev3.10.0 milestoneOct 30, 2024
Comment on lines +212 to 213
axis._set_converter(axis_converter[name])
axis.set_units(axis_units[name])
Copy link
MemberAuthor

Choose a reason for hiding this comment

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

The choice to use the private setter was a defensive one as the public
setter prevents being called multiple times (though does short circuit
if an identical input is provided, which I think is actually true here,
therefore the public one is probably functional (and a no-op).)

It is not clear to me on analysis how the unit information is or was
lost. A quick test commenting out these two lines which reset
converter/units displayed no obvious detrimental effect to removing
them, suggesting that even if once they were necessary, they may no
longer be.

These lines were last touched in#24141, though that really only generalized
the code into a loop rather than copy/pasted x and y behavior.
The original inclusion of resetting was in#4909, which indicated that
the dialog reset unit info. AFAICT, that is no longer true, though I
have not rigorously proved that.

The replacement is the get/set_converter method.This includes changes to use the getter and the private setter in the qtfigure options dialog menu.The choice to use the private setter was a defensive one as the publicsetter prevents being called multiple times (though does short circuitif an identical input is provided, which I think is actually true here,therefore the public one is probably functional (and a no-op).)It is not clear to me on analysis how the unit information is or waslost. A quick test commenting out the two lines which resetconverter/units displayed no obvious detrimental effect to removingthose, suggesting that even if once they were necessary, they may nolonger be.These lines were last touched inmatplotlib#24141, though that really only generalizedthe code into a loop rather than copy/pasted x and y behavior.The original inclusion of resetting was inmatplotlib#4909, which indicated thatthe dialog reset unit info. AFAICT, that is no longer true, though Ihave not rigorously proved that.
@ksundenksundenforce-pushed theexplicit_convertor_setting branch from862d275 to493fbc6CompareOctober 31, 2024 17:51
@tacaswell
Copy link
Member

Going to merge over the failure and created an issue to look into the Qt editor issues.

@tacaswelltacaswell merged commit32ec60d intomatplotlib:mainOct 31, 2024
41 of 43 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@tacaswelltacaswelltacaswell approved these changes

@timhoffmtimhoffmtimhoffm approved these changes

Assignees
No one assigned
Projects
None yet
Milestone
v3.10.0
Development

Successfully merging this pull request may close these issues.

Add public API for setting an axis unit converter
4 participants
@ksunden@jklymak@tacaswell@timhoffm

[8]ページ先頭

©2009-2025 Movatter.jp