Add match=msg to pytest.raises or convert to external_error_raised for modules in tests/plotting
This pull request xref #30999 to remove bare `pytest.raises`. It doesn't close that issue as I have only addressed files within `pandas/tests/plotting/`.

Things I did that were not simple adding `match = msg` to `pytest.raises` or converting them to `tm.external_error_raised`:

- In `pandas/plotting/_matplotlib/_core.py` I found two error messages somewhat unclear. I changed the error message in the `ValueError` raised by `_get_stacked_values` to be, imo, a little bit clearer. In addition, in the constructor for `PiePlot`, the previous error message for the `ValueError` was "None doesn't allow negative values" which I changed to "pie plot doesn't allow negative values" because I believe that was the original intent.
- In `test_frame.py`, in the `test_errorbar_plot` method, the `pytest.raises` was allowing matplotlib to raise either a `TypeError` or a `ValueError`. I changed it to an `external_error_raised` but also specified it to be a `TypeError` because that is what it is, and I didn't see the reason it was allowed to be either error.
- Also in `test_frame.py`, the test `test_invalid_xy_args` was pytest-parameterized to test two different kinds of errors: x not being a label or position, or the label being bad. I split it into two tests, calling the new test `test_bad_label`
- Also in `test_frame.py`, the test `test_partially_invalid_plot_data` looped over a list with one element in it. I guessed that this was a remnant of an older test strategy that is no longer employed. I removed the list and made the kind of plot being tested more explicit.
- In a couple of test modules I moved a few lines out of the context of the `pytest.raises` because they were setup lines that didn't raise the error: I wanted to make it clear exactly which pandas method was raising the error.

I will note that another developer, [DylanBrdt](https://github.com/DylanBrdt) commented on the issue that they would address these files but they haven't been active on github since February.

- [ ] xref #30999
- [ ] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry
