diff --git a/lib/matplotlib/axes/_axes.py b/lib/matplotlib/axes/_axes.py index 76c9f3cce7fb..799cb4064cb3 100644 --- a/lib/matplotlib/axes/_axes.py +++ b/lib/matplotlib/axes/_axes.py @@ -2333,8 +2333,16 @@ def broken_barh(self, xranges, yrange, **kwargs): .. plot:: mpl_examples/pylab_examples/broken_barh.py """ # process the unit information - self._process_unit_info(xdata=xranges[0], - ydata=yrange[0], + if len(xranges): + xdata = xranges[0] + else: + xdata = None + if len(yrange): + ydata = yrange[0] + else: + ydata = None + self._process_unit_info(xdata=xdata, + ydata=ydata, kwargs=kwargs) xranges = self.convert_xunits(xranges) yrange = self.convert_yunits(yrange) diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index 02071022b74d..2b39ad999da8 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -4130,6 +4130,11 @@ def test_dash_offset(): plt.show() +@cleanup +def test_broken_barh_empty(): + fig, ax = plt.subplots() + ax.broken_barh([], (.1, .5)) + if __name__ == '__main__': import nose