REF, TYP: factor out _mark_right from _add_legend_handle
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them

This PR factors out adding ` (right)` to labels which are meant to go on the right y-axis. This does not change anything user-facing, and is simply a precursor to fixing #40044  and #39522 .

The change is that on `master`, only `leg.get_texts()` shows `b (right)` while `ax.right_ax.get_legend_handles_labels()` shows `b`. The former is used for constructing the user-facing legend. The reason I think it needs doing is that I believe that to address #40044  and #39522, we need to use `.get_legend_handles_labels()` for both handles and labels, while currently `.get_legend_handles_labels` is used for handles and `leg.get_texts()` is used for labels.

Putting a breakpoint after

https://github.com/pandas-dev/pandas/blob/ab687aec38668cdb0139ca02d6e37e8c8386ae7d/pandas/plotting/_matplotlib/core.py#L591

results in , on this branch:
```python
(Pdb) ax.right_ax.get_legend_handles_labels()
([<matplotlib.lines.Line2D object at 0x7fc94adf1dc0>], ['b (right)'])
```

and on master:
```python
(Pdb) ax.right_ax.get_legend_handles_labels()
([<matplotlib.lines.Line2D object at 0x7ff2892abbe0>], ['b'])
```
codecov/patch shows the lines from `_mark_right_label` as not being covered - however, running `pytest pandas/tests/plotting/frame/test_frame_subplots.py -k test_subplots_dup_columns` hits them @fangchenli I think the coverage check here is failing because the slow plotting tests' coverage isn't currently uploaded to codecov, any suggestions for how to deal with that? Should `posix.yml` be edited so there's a step at the end which uploads to codecov, like there is in `database.yml`? > @fangchenli I think the coverage check here is failing because the slow plotting tests' coverage isn't currently uploaded to codecov, any suggestions for how to deal with that? Should `posix.yml` be edited so there's a step at the end which uploads to codecov, like there is in `database.yml`?

Yes, enable coverage for the build that actually run those tests and upload the report. Codecov'll automatically merge multiple reports. xref #39758 codecov check passes now @jreback  thanks @MarcoGorelli I think it's fine to merge!