Skip to content

Raise a clear error when grouped_bar gets singular label/color (#30739)#32006

Open
Kundhan73 wants to merge 1 commit into
matplotlib:mainfrom
Kundhan73:fix-grouped-bar-label-color-30739
Open

Raise a clear error when grouped_bar gets singular label/color (#30739)#32006
Kundhan73 wants to merge 1 commit into
matplotlib:mainfrom
Kundhan73:fix-grouped-bar-label-color-30739

Conversation

@Kundhan73

Copy link
Copy Markdown

Closes #30739.

Axes.grouped_bar passes each dataset's label and color to bar() itself and also
forwards **kwargs. If a caller passes a singular label=/color= (they land in
kwargs), bar() receives the keyword twice and raises an opaque
TypeError: ...bar() got multiple values for keyword argument 'label'.

This adds an early guard in grouped_bar that raises a clear TypeError pointing the
user to the plural labels/colors parameters, plus a parametrized test.

Open question: the reporter expected label="dataset" to work (i.e. alias singular →
plural). I went with a clear error since a single label/color is ambiguous across N
datasets and contradicts the documented plural API — happy to change to aliasing if you
prefer. No changelog entry added since grouped_bar is provisional and 3.11 is
unreleased; let me know if you'd like one.

@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

Thank you for opening your first PR into Matplotlib!

If you have not heard from us in a week or so, please leave a new comment below and that should bring it to our attention. Most of our reviewers are volunteers and sometimes things fall through the cracks. We also ask that you please finish addressing any review comments on this PR and wait for it to be merged (or closed) before opening a new one, as it can be a valuable learning experience to go through the review process.

You can also join us on discourse chat for real-time discussion.

For details on testing, writing docs, and our review process, please see the developer guide.
Please let us know if (and how) you use AI, it will help us give you better feedback on your PR.

We strive to be a welcoming and open project. Please follow our Code of Conduct.

@scottshambaugh

scottshambaugh commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Hi @Kundhan73, please use our PR template that auto-populates when you open a PR, and do not use AI to write your PR descriptions or comments beyond direct translation. Marking for autoclose until these are addressed.

@scottshambaugh scottshambaugh added the status: autoclose candidate PRs that are not yet ready for review and may be automatically closed in two weeks label Jul 7, 2026
@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

⏰ This pull request might be automatically closed in two weeks from now.

Thank you for your contribution to Matplotlib and for the effort you have put into this PR. This pull request does not yet meet the quality and clarity standards needed for an effective review. Project maintainers have limited time for code reviews, and our goal is to prioritize well-prepared contributions to keep Matplotlib maintainable.

Matplotlib maintainers cannot provide one-to-one guidance on this PR. However, if you ask focused, well-researched questions, a community member may be willing to help. 💬

To increase the chance of a productive review:

As the author, you are responsible for driving this PR, which entails doing necessary background research as well as presenting its context and your thought process. If you are a new contributor, or do not know how to fulfill these requirements, we recommend that you familiarize yourself with Matplotlib's development conventions or engage with the community via our Discourse or one of our meetings before submitting code.

If you substantially improve this PR within two weeks, leave a comment and a team member may remove the status: autoclose candidate label and the PR stays open. Cosmetic changes or incomplete fixes will not be sufficient. Maintainers will assess improvements on their own schedule. Please do not ping (@) maintainers.

@melissawm melissawm added the API: argument checking Validation of acceptable argument values label Jul 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

API: argument checking Validation of acceptable argument values first-contribution status: autoclose candidate PRs that are not yet ready for review and may be automatically closed in two weeks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: grouped_bar can pass label and color twice, causing TypeError

3 participants