Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork2.8k
[Fix] Support trace-specific color sequences in Plotly Express via templates#5437
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
Open
antonymilne wants to merge7 commits intoplotly:mainChoose a base branch fromantonymilne:main
base:main
Could not load branches
Branch not found:{{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline, and old review comments may become outdated.
+72 −2
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
- Check template.data.<trace_type> for marker.color or line.color before falling back to template.layout.colorway- Handle timeline special case (maps to bar trace type)- Use marker colors first, fall back to line colors if no markers found- Fixes issueplotly#5416
- Modify apply_default_cascade to check template.data.<trace_type> for marker.color or line.color- Fallback to template.layout.colorway if trace-specific colors not found- Add comprehensive tests for trace-specific color sequences- Handle timeline special case (maps to bar trace type)- Follow existing patterns for symbol_sequence and line_dash_sequenceFixesplotly#5416
- Modify apply_default_cascade to read colors from template.data.<trace_type>- Prioritize trace-specific colors over layout.colorway- Add special case for timeline constructor (maps to bar trace type)- Add comprehensive tests for trace-specific color sequences- Test trace type isolation, fallback behavior, and timeline special case
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
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.
Uh oh!
There was an error while loading.Please reload this page.
Summary
Fixes#5416.
You can define color sequences in a template on a per-trace basis via
template.data.<trace_type>, but these were ignored by Plotly Express. Now they are used.Changes
apply_default_cascade()to check for trace-specific colors intemplate.data.<trace_type>before falling back totemplate.layout.colorwayor default qualitative palettetest_px_templates_trace_specific_colorsExample Usage
See here for a demonstration of all (I think?) applicable trace types, i.e. those that support
marker.color.Code PR
plotly.graph_objects, my modifications concern the code generator andnot the generated files.