From 1616fb3d2c00905a5f3af510db893206ae00ea09 Mon Sep 17 00:00:00 2001 From: Marco Edward Gorelli <33491632+MarcoGorelli@users.noreply.github.com> Date: Thu, 17 Nov 2022 21:39:20 +0000 Subject: [PATCH] Backport PR Revert "Add color and size to arguments (#44856)" (#49752) Co-authored-by: Patrick Hoefler <61934744+phofl@users.noreply.github.com> --- doc/source/whatsnew/v1.5.0.rst | 1 - doc/source/whatsnew/v1.5.2.rst | 2 +- pandas/plotting/_core.py | 9 --------- pandas/tests/plotting/frame/test_frame.py | 6 +----- pandas/tests/plotting/frame/test_frame_color.py | 5 ++--- 5 files changed, 4 insertions(+), 19 deletions(-) diff --git a/doc/source/whatsnew/v1.5.0.rst b/doc/source/whatsnew/v1.5.0.rst index 7f6bc05b4eaad..bce1ad25afbb1 100644 --- a/doc/source/whatsnew/v1.5.0.rst +++ b/doc/source/whatsnew/v1.5.0.rst @@ -1155,7 +1155,6 @@ Plotting - Bug in :meth:`DataFrame.boxplot` that prevented passing in ``xlabel`` and ``ylabel`` (:issue:`45463`) - Bug in :meth:`DataFrame.boxplot` that prevented specifying ``vert=False`` (:issue:`36918`) - Bug in :meth:`DataFrame.plot.scatter` that prevented specifying ``norm`` (:issue:`45809`) -- The function :meth:`DataFrame.plot.scatter` now accepts ``color`` as an alias for ``c`` and ``size`` as an alias for ``s`` for consistency to other plotting functions (:issue:`44670`) - Fix showing "None" as ylabel in :meth:`Series.plot` when not setting ylabel (:issue:`46129`) - Bug in :meth:`DataFrame.plot` that led to xticks and vertical grids being improperly placed when plotting a quarterly series (:issue:`47602`) - Bug in :meth:`DataFrame.plot` that prevented setting y-axis label, limits and ticks for a secondary y-axis (:issue:`47753`) diff --git a/doc/source/whatsnew/v1.5.2.rst b/doc/source/whatsnew/v1.5.2.rst index 540ca2b12165c..dd909415d9e85 100644 --- a/doc/source/whatsnew/v1.5.2.rst +++ b/doc/source/whatsnew/v1.5.2.rst @@ -34,7 +34,7 @@ Bug fixes Other ~~~~~ -- +- Reverted ``color`` as an alias for ``c`` and ``size`` as an alias for ``s`` in function :meth:`DataFrame.plot.scatter` (:issue:`49732`) - .. --------------------------------------------------------------------------- diff --git a/pandas/plotting/_core.py b/pandas/plotting/_core.py index 9c418ea7cf30b..e1dba8ba58da1 100644 --- a/pandas/plotting/_core.py +++ b/pandas/plotting/_core.py @@ -1643,11 +1643,6 @@ def scatter(self, x, y, s=None, c=None, **kwargs) -> PlotAccessor: .. versionchanged:: 1.1.0 - size : str, scalar or array-like, optional - Alias for s. - - .. versionadded:: 1.5.0 - c : str, int or array-like, optional The color of each point. Possible values are: @@ -1661,10 +1656,6 @@ def scatter(self, x, y, s=None, c=None, **kwargs) -> PlotAccessor: - A column name or position whose values will be used to color the marker points according to a colormap. - color : str, int or array-like, optional - Alias for c. - - .. versionadded:: 1.5.0 **kwargs Keyword arguments to pass on to :meth:`DataFrame.plot`. diff --git a/pandas/tests/plotting/frame/test_frame.py b/pandas/tests/plotting/frame/test_frame.py index dc70ef7e3520a..6221673d12375 100644 --- a/pandas/tests/plotting/frame/test_frame.py +++ b/pandas/tests/plotting/frame/test_frame.py @@ -1,3 +1,4 @@ +""" Test cases for DataFrame.plot """ from datetime import ( date, datetime, @@ -658,11 +659,6 @@ def test_plot_scatter(self): with pytest.raises(TypeError, match=msg): df.plot.scatter(y="y") - with pytest.raises(TypeError, match="Specify exactly one of `s` and `size`"): - df.plot.scatter(x="x", y="y", s=2, size=2) - with pytest.raises(TypeError, match="Specify exactly one of `c` and `color`"): - df.plot.scatter(x="a", y="b", c="red", color="green") - # GH 6951 axes = df.plot(x="x", y="y", kind="scatter", subplots=True) self._check_axes_shape(axes, axes_num=1, layout=(1, 1)) diff --git a/pandas/tests/plotting/frame/test_frame_color.py b/pandas/tests/plotting/frame/test_frame_color.py index e384861d8a57c..e6653c38df23f 100644 --- a/pandas/tests/plotting/frame/test_frame_color.py +++ b/pandas/tests/plotting/frame/test_frame_color.py @@ -196,15 +196,14 @@ def test_if_scatterplot_colorbars_are_next_to_parent_axes(self): assert np.isclose(parent_distance, colorbar_distance, atol=1e-7).all() @pytest.mark.parametrize("cmap", [None, "Greys"]) - @pytest.mark.parametrize("kw", ["c", "color"]) - def test_scatter_with_c_column_name_with_colors(self, cmap, kw): + def test_scatter_with_c_column_name_with_colors(self, cmap): # https://github.com/pandas-dev/pandas/issues/34316 df = DataFrame( [[5.1, 3.5], [4.9, 3.0], [7.0, 3.2], [6.4, 3.2], [5.9, 3.0]], columns=["length", "width"], ) df["species"] = ["r", "r", "g", "g", "b"] - ax = df.plot.scatter(x=0, y=1, cmap=cmap, **{kw: "species"}) + ax = df.plot.scatter(x=0, y=1, cmap=cmap, c="species") assert ax.collections[0].colorbar is None def test_scatter_colors(self):