From e112aefc2b268acc3d353f2938a3bb85bf0355f8 Mon Sep 17 00:00:00 2001 From: Jason Liw Yan Chong Date: Sun, 29 Mar 2015 17:42:00 -0400 Subject: [PATCH 1/6] Feature implementation for Issue 2841 --- lib/matplotlib/axes/_axes.py | 4 +- lib/matplotlib/axes/_base.py | 58 ++++++++++++++----- lib/matplotlib/cycle.py | 108 +++++++++++++++++++++++++++++++++++ lib/matplotlib/rcsetup.py | 29 ++++++++++ lib/matplotlib/stackplot.py | 4 +- lib/matplotlib/streamplot.py | 2 +- 6 files changed, 185 insertions(+), 20 deletions(-) create mode 100644 lib/matplotlib/cycle.py diff --git a/lib/matplotlib/axes/_axes.py b/lib/matplotlib/axes/_axes.py index 20fde55ba981..047d0b31d2f3 100644 --- a/lib/matplotlib/axes/_axes.py +++ b/lib/matplotlib/axes/_axes.py @@ -2876,7 +2876,7 @@ def xywhere(xs, ys, mask): if ecolor is None: if l0 is None: - ecolor = six.next(self._get_lines.color_cycle) + ecolor = self._get_lines.cycle.get_next_color() else: ecolor = l0.get_color() @@ -5677,7 +5677,7 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, nx = len(x) # number of datasets if color is None: - color = [six.next(self._get_lines.color_cycle) + color = [self._get_lines.cycle.get_next_color() for i in xrange(nx)] else: color = mcolors.colorConverter.to_rgba_array(color) diff --git a/lib/matplotlib/axes/_base.py b/lib/matplotlib/axes/_base.py index 1e4f52d377cd..fae0955894a2 100644 --- a/lib/matplotlib/axes/_base.py +++ b/lib/matplotlib/axes/_base.py @@ -29,6 +29,8 @@ import matplotlib.font_manager as font_manager import matplotlib.text as mtext import matplotlib.image as mimage +import matplotlib.cycle as mcycle + from matplotlib.artist import allow_rasterization from matplotlib.cbook import iterable @@ -137,7 +139,7 @@ class _process_plot_var_args(object): def __init__(self, axes, command='plot'): self.axes = axes self.command = command - self.set_color_cycle() + self.cycle = mcycle.Cycle() def __getstate__(self): # note: it is not possible to pickle a itertools.cycle instance @@ -145,12 +147,7 @@ def __getstate__(self): def __setstate__(self, state): self.__dict__ = state.copy() - self.set_color_cycle() - - def set_color_cycle(self, clist=None): - if clist is None: - clist = rcParams['axes.color_cycle'] - self.color_cycle = itertools.cycle(clist) + self.cycle.set_color_cycle() def __call__(self, *args, **kwargs): @@ -229,12 +226,10 @@ def _xy_from_xy(self, x, y): return x, y def _makeline(self, x, y, kw, kwargs): - kw = kw.copy() # Don't modify the original kw. + args = self.cycle.next() + args.update(kw) + kw = args.copy() # Don't modify the original kw. kwargs = kwargs.copy() - if kw.get('color', None) is None and kwargs.get('color', None) is None: - kwargs['color'] = kw['color'] = six.next(self.color_cycle) - # (can't use setdefault because it always evaluates - # its second argument) seg = mlines.Line2D(x, y, **kw ) @@ -245,7 +240,7 @@ def _makefill(self, x, y, kw, kwargs): try: facecolor = kw['color'] except KeyError: - facecolor = six.next(self.color_cycle) + facecolor = self.cycle.get_next_color() seg = mpatches.Polygon(np.hstack((x[:, np.newaxis], y[:, np.newaxis])), facecolor=facecolor, @@ -971,14 +966,47 @@ def clear(self): """clear the axes""" self.cla() + def set_cycle(self, style, slist): + """ + Set the cycle for a line attribute for any future plot commands + on this Axes + + *style* is a key to a dictionary for cycles in the cycle class + *slist* is a list of mpl style specifiers + """ + self._get_lines.cycle.set_cycle(style, slist) + + def clear_all_cycle(self): + """ + Clear all the current line attribute cycles + """ + self._get_lines.cycle.clear_all_cycle() + + def clear_cycle(self, style): + """ + Clear a cycle for a line attribute specified by style + + *style* is a key to a dictionary for cycles in the cycle class + """ + self._get_lines.cycle.clear_cycle(style) + def set_color_cycle(self, clist): """ Set the color cycle for any future plot commands on this Axes. *clist* is a list of mpl color specifiers. """ - self._get_lines.set_color_cycle(clist) - self._get_patches_for_fill.set_color_cycle(clist) + self._get_lines.cycle.set_color_cycle(clist) + self._get_patches_for_fill.cycle.set_color_cycle(clist) + + def set_line_cycle(self, llist): + """ + Set the line style cycle for any future plot commands on this + Axes. + + *llist* is a list of mpl line style specifiers. + """ + self._get_lines.cycle.set_line_cycle(llist) def ishold(self): """return the HOLD status of the axes""" diff --git a/lib/matplotlib/cycle.py b/lib/matplotlib/cycle.py new file mode 100644 index 000000000000..6fe0d64cc286 --- /dev/null +++ b/lib/matplotlib/cycle.py @@ -0,0 +1,108 @@ +import itertools +import six +from matplotlib import rcParams + + +class Cycle: + + def __init__(self): + """ + Set the initial cycle of styles to be used by the lines of the graph + """ + self._styles = {'color': None, + 'linestyle': None, + 'linewidth': None, + 'marker': None, + 'markersize': None, + 'markeredgewidth': None, + 'markeredgecolor': None, + 'markerfacecolor': None, + 'antialiased': None, + 'dash_capstyle': None, + 'solid_capstyle': None, + 'dash_joinstyle': None, + 'solid_joinstyle': None, + } + self.set_color_cycle() + self.set_line_cycle() + + def next(self): + """ + Returns the next set of line attributes for a line on the graph to use + """ + args = {} + for i in self._styles.keys(): + if self._styles[i] != None: + args[i] = six.next(self._styles[i]) + return args + + def set_cycle(self, style, slist): + """ + Set a cycle for a line attribute specified by style, the cycle to be + used to is specified by slist + + *style* is a key to the _style dictionary + *slist* is a list of mpl style specifiers + """ + if self.validate(style, slist): + self._styles[style] = itertools.cycle(slist) + + def validate(self, style, plist): + """ + Ensures that the style given is a valid attribute to by cycled over + If the style is a valid cycle, ensure that the list of specifiers + given are valid specifiers for that style + + *style* is a key to the _style dictionary + *plist* is a list of mpl style specifiers + """ + if style not in self._styles.keys(): + raise ValueError( + "Set cycle value error, %s is not a valid style" % style) + param = 'lines.' + style + for val in set(plist): + try: + rcParams.validate[param](val) + except ValueError: + raise ValueError( + "Set cycle value error, Style %s: %s" % (style, str(val))) + return True + + def clear_cycle(self, style): + """ + Clears(resets) a cycle for a line attribute specified by style + + *style* is a key to the _style dictionary + """ + self._styles[style] = None + + def clear_all_cycle(self): + """ + Clears (resets) all cycles for the lines on a plot + """ + for style in self._styles.keys(): + self._styles[style] = None + + def get_next_color(self): + """ + Return the next color to be used by a line + """ + return six.next(self._styles['color']) + + def set_color_cycle(self, clist=None): + """ + Sets a color cycle to be used for the lines on the graph, if none are + specified the default color cycle will be used + """ + if clist is None: + clist = rcParams['axes.color_cycle'] + self._styles['color'] = itertools.cycle(clist) + + def set_line_cycle(self, llist=None): + """ + Sets a line style cycle to be used for the lines on the graph, if none are + specified the default line style cycle will be used + """ + if llist is None: + llist = rcParams['axes.line_cycle'] + self._styles['linestyle'] = itertools.cycle(llist) diff --git a/lib/matplotlib/rcsetup.py b/lib/matplotlib/rcsetup.py index 1fdf121b32d8..93cdf17c1c32 100644 --- a/lib/matplotlib/rcsetup.py +++ b/lib/matplotlib/rcsetup.py @@ -234,6 +234,24 @@ def __call__(self, s): except ValueError: raise ValueError('Could not convert all entries to ints') +def validate_line(s): + 'return a valid arg' + if s in (None, 'none', 'None', ' ', ''): + return 'None' + + if s in ('-', '--', '-.', ':'): + return s + + raise ValueError("line given not valid") + + +def validate_markercolor(s): + 'return a valid marker color arg' + if s == 'auto': + return s + else: + return validate_color(s) + def validate_color(s): 'return a valid color arg' @@ -278,6 +296,14 @@ def validate_colorlist(s): msg = "'s' must be of type [ string | list | tuple ]" raise ValueError(msg) +def validate_linelist(s): + 'return a list of colorspecs' + if isinstance(s, six.string_types): + return [validate_line(l.strip()) for l in s.split(',')] + else: + assert type(s) in [list, tuple] + return [validate_line(l) for l in s] + def validate_stringlist(s): 'return a list' if isinstance(s, six.string_types): @@ -529,6 +555,8 @@ def __call__(self, s): 'lines.marker': ['None', six.text_type], # black 'lines.markeredgewidth': [0.5, validate_float], 'lines.markersize': [6, validate_float], # markersize, in points + 'lines.markeredgecolor' : ['auto', validate_markercolor], + 'lines.markerfacecolor' : ['auto', validate_markercolor], 'lines.antialiased': [True, validate_bool], # antialised (no jaggies) 'lines.dash_joinstyle': ['round', validate_joinstyle], 'lines.solid_joinstyle': ['round', validate_joinstyle], @@ -637,6 +665,7 @@ def __call__(self, s): 'axes.color_cycle': [['b', 'g', 'r', 'c', 'm', 'y', 'k'], validate_colorlist], # cycle of plot # line colors + 'axes.line_cycle':[['-'],validate_linelist], 'axes.xmargin': [0, ValidateInterval(0, 1, closedmin=True, closedmax=True)], # margin added to xaxis diff --git a/lib/matplotlib/stackplot.py b/lib/matplotlib/stackplot.py index b42ca98702b4..b04765fb62bb 100644 --- a/lib/matplotlib/stackplot.py +++ b/lib/matplotlib/stackplot.py @@ -103,13 +103,13 @@ def stackplot(axes, x, *args, **kwargs): # Color between x = 0 and the first array. r.append(axes.fill_between(x, first_line, stack[0, :], - facecolor=six.next(axes._get_lines.color_cycle), + facecolor=axes._get_lines.cycle.get_next_color(), label= six.next(labels, None), **kwargs)) # Color between array i-1 and array i for i in xrange(len(y) - 1): - color = six.next(axes._get_lines.color_cycle) + color = axes._get_lines.cycle.get_next_color() r.append(axes.fill_between(x, stack[i, :], stack[i + 1, :], facecolor= color, label= six.next(labels, None), diff --git a/lib/matplotlib/streamplot.py b/lib/matplotlib/streamplot.py index 3708afa647db..b1ef343c78a9 100644 --- a/lib/matplotlib/streamplot.py +++ b/lib/matplotlib/streamplot.py @@ -80,7 +80,7 @@ def streamplot(axes, x, y, u, v, density=1, linewidth=None, color=None, transform = axes.transData if color is None: - color = six.next(axes._get_lines.color_cycle) + color = axes._get_lines.get_next_color() if linewidth is None: linewidth = matplotlib.rcParams['lines.linewidth'] From 0ca872d3530339fd4817807ca28487cd8a698390 Mon Sep 17 00:00:00 2001 From: Chris Li Date: Sat, 4 Apr 2015 15:45:40 -0400 Subject: [PATCH 2/6] Added automated tests for cycle issue #2841 --- .../test_cycle/clear_all_cycle.pdf | Bin 0 -> 7099 bytes .../test_cycle/clear_all_cycle.png | Bin 0 -> 53591 bytes .../test_cycle/clear_all_cycle.svg | 660 +++++++++++++ .../test_cycle/clear_one_cycle.pdf | Bin 0 -> 7111 bytes .../test_cycle/clear_one_cycle.png | Bin 0 -> 72233 bytes .../test_cycle/clear_one_cycle.svg | 660 +++++++++++++ .../baseline_images/test_cycle/set_cycles.pdf | Bin 0 -> 9160 bytes .../baseline_images/test_cycle/set_cycles.png | Bin 0 -> 61682 bytes .../baseline_images/test_cycle/set_cycles.svg | 902 ++++++++++++++++++ lib/matplotlib/tests/test_cycle.py | 51 + 10 files changed, 2273 insertions(+) create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.png create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.svg create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.png create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.svg create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.png create mode 100644 lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.svg create mode 100644 lib/matplotlib/tests/test_cycle.py diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.pdf b/lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e46c94a24909b96b611a7c0ca9092555e0cd5a42 GIT binary patch literal 7099 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�!hEdp*Gep-PyorE$(PY|!I4m}V|~Y-P8O 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.svg b/lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.svg new file mode 100644 index 000000000000..aa00ce020e46 --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_cycle/clear_all_cycle.svg @@ -0,0 +1,660 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.pdf b/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.pdf new file mode 100644 index 0000000000000000000000000000000000000000..caaf171ee6d514e33d0c27a0509ff2d1f342a430 GIT binary patch literal 7111 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.png b/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.png new file mode 100644 index 0000000000000000000000000000000000000000..db2f0dc465a55a54066be37dcc3030826d2bc955 GIT binary patch literal 72233 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 A;{X5v literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.svg b/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.svg new file mode 100644 index 000000000000..5c13c9ca3035 --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_cycle/clear_one_cycle.svg @@ -0,0 +1,660 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.pdf b/lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5bc5d696b325a2c4217ebf34eb8b9e7963858fca GIT binary patch literal 9160 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.png b/lib/matplotlib/tests/baseline_images/test_cycle/set_cycles.png new file mode 100644 index 0000000000000000000000000000000000000000..a1c797e2c209cf78ff3546ab0e0865b60c77ad14 GIT binary patch literal 61682 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/test_cycle.py b/lib/matplotlib/tests/test_cycle.py new file mode 100644 index 000000000000..5ca6f203c03b --- /dev/null +++ b/lib/matplotlib/tests/test_cycle.py @@ -0,0 +1,51 @@ +import numpy as np +import matplotlib +from matplotlib.testing.decorators import image_comparison +import matplotlib.pyplot as plt + +@image_comparison(baseline_images=['set_cycles']) +def test_set_cycles(): + x = np.linspace(0, 2*np.pi) + offsets = np.linspace(0, 2*np.pi, 4, endpoint=False) + yy = np.transpose([np.sin(x + phi) for phi in offsets]) + fig, ax1 = plt.subplots(nrows=1) + ax1.set_color_cycle(['c', 'm', 'y', 'k']) + ax1.set_cycle('linestyle', ['--', '-.', ':']) + ax1.set_cycle('linewidth', [3, 1]) + ax1.set_cycle('marker', ['>', '<', 'o']) + ax1.set_cycle('markersize', [5, 10]) + ax1.set_cycle('markerfacecolor', ['black']) + ax1.set_cycle('markeredgecolor', ['blue']) + ax1.set_cycle('markeredgewidth', [1]) + ax1.set_cycle('antialiased', [True, False]) + ax1.set_cycle('dash_joinstyle', ['miter', 'round', 'bevel']) + ax1.set_cycle('solid_joinstyle', ['miter', 'round', 'bevel']) + ax1.set_cycle('dash_capstyle', ['butt', 'round', 'projecting']) + ax1.set_cycle('solid_capstyle', ['butt', 'round', 'projecting']) + ax1.plot(yy) + +@image_comparison(baseline_images=['clear_one_cycle']) +def test_clear_one_cycle(): + x = np.linspace(0, 2*np.pi) + offsets = np.linspace(0, 2*np.pi, 4, endpoint=False) + yy = np.transpose([np.sin(x + phi) for phi in offsets]) + fig, ax1 = plt.subplots(nrows=1) + ax1.set_color_cycle(['c', 'm', 'y', 'k']) + ax1.set_cycle('linestyle', ['--', '-.', ':']) + ax1.set_cycle('linewidth', [3, 1]) + ax1.clear_cycle('linestyle') + ax1.plot(yy) + + +@image_comparison(baseline_images=['clear_all_cycle']) +def test_clear_all_cycle(): + x = np.linspace(0, 2*np.pi) + offsets = np.linspace(0, 2*np.pi, 4, endpoint=False) + yy = np.transpose([np.sin(x + phi) for phi in offsets]) + fig, ax1 = plt.subplots(nrows=1) + ax1.set_color_cycle(['c', 'm', 'y', 'k']) + ax1.set_cycle('linestyle', ['--', '-.', ':']) + ax1.set_cycle('linewidth', [3, 1]) + ax1.clear_all_cycle() + ax1.plot(yy) + \ No newline at end of file From f1bc4df8ea366eb92bce7dec48315f6e23576631 Mon Sep 17 00:00:00 2001 From: Jason Liw Yan Chong Date: Sun, 5 Apr 2015 19:11:28 -0400 Subject: [PATCH 3/6] Added additional validation, test cases, and fixed minor bugs --- lib/matplotlib/__init__.py | 1 + lib/matplotlib/axes/_base.py | 8 +-- lib/matplotlib/cycle.py | 82 +++++++++++++++++++++--------- lib/matplotlib/rcsetup.py | 12 ++--- lib/matplotlib/tests/test_cycle.py | 29 ++++++----- 5 files changed, 81 insertions(+), 51 deletions(-) diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py index 31242ccaecd2..8a4d665bcaf7 100644 --- a/lib/matplotlib/__init__.py +++ b/lib/matplotlib/__init__.py @@ -1397,6 +1397,7 @@ def tk_window_focus(): 'matplotlib.tests.test_colors', 'matplotlib.tests.test_compare_images', 'matplotlib.tests.test_contour', + 'matplotlib.tests.test_cycle', 'matplotlib.tests.test_dates', 'matplotlib.tests.test_delaunay', 'matplotlib.tests.test_figure', diff --git a/lib/matplotlib/axes/_base.py b/lib/matplotlib/axes/_base.py index fae0955894a2..21ffaefe654c 100644 --- a/lib/matplotlib/axes/_base.py +++ b/lib/matplotlib/axes/_base.py @@ -142,12 +142,10 @@ def __init__(self, axes, command='plot'): self.cycle = mcycle.Cycle() def __getstate__(self): - # note: it is not possible to pickle a itertools.cycle instance - return {'axes': self.axes, 'command': self.command} + return {'axes': self.axes, 'command': self.command, 'cycle': self.cycle} def __setstate__(self, state): self.__dict__ = state.copy() - self.cycle.set_color_cycle() def __call__(self, *args, **kwargs): @@ -226,9 +224,7 @@ def _xy_from_xy(self, x, y): return x, y def _makeline(self, x, y, kw, kwargs): - args = self.cycle.next() - args.update(kw) - kw = args.copy() # Don't modify the original kw. + kw = self.cycle.next(kw.copy()) kwargs = kwargs.copy() seg = mlines.Line2D(x, y, **kw diff --git a/lib/matplotlib/cycle.py b/lib/matplotlib/cycle.py index 6fe0d64cc286..1b70026030f5 100644 --- a/lib/matplotlib/cycle.py +++ b/lib/matplotlib/cycle.py @@ -23,57 +23,77 @@ def __init__(self): 'dash_joinstyle': None, 'solid_joinstyle': None, } + self._styles_list = {} self.set_color_cycle() self.set_line_cycle() - def next(self): + def __getstate__(self): + return {'_styles_list': self._styles_list} + + def __setstate__(self, state): + self.__init__() + self.__dict__.update(state) + for style in self._styles_list.keys(): + self.set_cycle(style, self._styles_list[style]) + + def next(self, args={}): """ Returns the next set of line attributes for a line on the graph to use + *args* is an optional dictionary of style arguments + Styles that already exist in *args* will not be cycled through """ - args = {} - for i in self._styles.keys(): - if self._styles[i] != None: - args[i] = six.next(self._styles[i]) + args = args.copy() + for style in self._styles.keys(): + if self._styles[style] != None and style not in args: + args[style] = six.next(self._styles[style]) return args def set_cycle(self, style, slist): """ Set a cycle for a line attribute specified by style, the cycle to be used to is specified by slist - + *style* is a key to the _style dictionary *slist* is a list of mpl style specifiers """ - if self.validate(style, slist): + if self._validate(style, slist): + self._styles_list[style] = slist self._styles[style] = itertools.cycle(slist) - def validate(self, style, plist): + def _validate(self, style, slist): """ Ensures that the style given is a valid attribute to by cycled over If the style is a valid cycle, ensure that the list of specifiers given are valid specifiers for that style - + *style* is a key to the _style dictionary *plist* is a list of mpl style specifiers """ + if type(slist) not in (list, tuple) or slist == []: + msg = "'slist' must be of type [list | tuple ] and non empty" + raise ValueError(msg) if style not in self._styles.keys(): - raise ValueError( - "Set cycle value error, %s is not a valid style" % style) + msg = "set cycle value error, %s is not a valid style" % style + raise ValueError(msg) param = 'lines.' + style - for val in set(plist): + for val in slist: try: rcParams.validate[param](val) except ValueError: - raise ValueError( - "Set cycle value error, Style %s: %s" % (style, str(val))) + msg = "Set cycle value error, Style %s: %s" % (style, str(val)) + raise ValueError(msg) + return True def clear_cycle(self, style): """ Clears(resets) a cycle for a line attribute specified by style - + *style* is a key to the _style dictionary """ + if style not in self._styles.keys(): + msg = "clear cycle value error, %s is not a valid style" % style + raise ValueError(msg) self._styles[style] = None def clear_all_cycle(self): @@ -83,11 +103,14 @@ def clear_all_cycle(self): for style in self._styles.keys(): self._styles[style] = None - def get_next_color(self): + def set_line_cycle(self, llist=None): """ - Return the next color to be used by a line + Sets a line style cycle to be used for the lines on the graph, if none are + specified the default line style cycle will be used """ - return six.next(self._styles['color']) + if llist is None: + llist = rcParams['axes.line_cycle'] + self.set_cycle('linestyle', llist) def set_color_cycle(self, clist=None): """ @@ -96,13 +119,22 @@ def set_color_cycle(self, clist=None): """ if clist is None: clist = rcParams['axes.color_cycle'] - self._styles['color'] = itertools.cycle(clist) + self.set_cycle('color', clist) - def set_line_cycle(self, llist=None): + def get_next_color(self): """ - Sets a line style cycle to be used for the lines on the graph, if none are - specified the default line style cycle will be used + Return the next color or defaults to rcParams if none """ - if llist is None: - llist = rcParams['axes.line_cycle'] - self._styles['linestyle'] = itertools.cycle(llist) + try: + return six.next(self._styles['color']) + except TypeError: + return rcParams['lines.color'] + + def get_next_linestyle(self): + """ + Return the next linestyle or defaults to rcParams if none + """ + try: + return six.next(self._styles['linestyle']) + except TypeError: + return rcParams['lines.linestyle'] diff --git a/lib/matplotlib/rcsetup.py b/lib/matplotlib/rcsetup.py index 93cdf17c1c32..c5e9cd0c6f73 100644 --- a/lib/matplotlib/rcsetup.py +++ b/lib/matplotlib/rcsetup.py @@ -238,11 +238,9 @@ def validate_line(s): 'return a valid arg' if s in (None, 'none', 'None', ' ', ''): return 'None' - if s in ('-', '--', '-.', ':'): return s - - raise ValueError("line given not valid") + raise ValueError('%s is not a valid line arg' % s) def validate_markercolor(s): @@ -300,9 +298,11 @@ def validate_linelist(s): 'return a list of colorspecs' if isinstance(s, six.string_types): return [validate_line(l.strip()) for l in s.split(',')] - else: - assert type(s) in [list, tuple] + elif type(s) in (list, tuple) and s != []: return [validate_line(l) for l in s] + else: + msg = "'s' must be of type [ string | list | tuple ] and non empty" + raise ValueError(msg) def validate_stringlist(s): 'return a list' @@ -550,7 +550,7 @@ def __call__(self, s): # line props 'lines.linewidth': [1.0, validate_float], # line width in points - 'lines.linestyle': ['-', six.text_type], # solid line + 'lines.linestyle': ['-', validate_line], # solid line 'lines.color': ['b', validate_color], # blue 'lines.marker': ['None', six.text_type], # black 'lines.markeredgewidth': [0.5, validate_float], diff --git a/lib/matplotlib/tests/test_cycle.py b/lib/matplotlib/tests/test_cycle.py index 5ca6f203c03b..1ab76831e935 100644 --- a/lib/matplotlib/tests/test_cycle.py +++ b/lib/matplotlib/tests/test_cycle.py @@ -3,12 +3,13 @@ from matplotlib.testing.decorators import image_comparison import matplotlib.pyplot as plt + @image_comparison(baseline_images=['set_cycles']) def test_set_cycles(): - x = np.linspace(0, 2*np.pi) - offsets = np.linspace(0, 2*np.pi, 4, endpoint=False) + x = np.linspace(0, 2 * np.pi) + offsets = np.linspace(0, 2 * np.pi, 4, endpoint=False) yy = np.transpose([np.sin(x + phi) for phi in offsets]) - fig, ax1 = plt.subplots(nrows=1) + fig, ax1 = plt.subplots(nrows=1) ax1.set_color_cycle(['c', 'm', 'y', 'k']) ax1.set_cycle('linestyle', ['--', '-.', ':']) ax1.set_cycle('linewidth', [3, 1]) @@ -24,28 +25,28 @@ def test_set_cycles(): ax1.set_cycle('solid_capstyle', ['butt', 'round', 'projecting']) ax1.plot(yy) + @image_comparison(baseline_images=['clear_one_cycle']) def test_clear_one_cycle(): - x = np.linspace(0, 2*np.pi) - offsets = np.linspace(0, 2*np.pi, 4, endpoint=False) + x = np.linspace(0, 2 * np.pi) + offsets = np.linspace(0, 2 * np.pi, 4, endpoint=False) yy = np.transpose([np.sin(x + phi) for phi in offsets]) - fig, ax1 = plt.subplots(nrows=1) + fig, ax1 = plt.subplots(nrows=1) ax1.set_color_cycle(['c', 'm', 'y', 'k']) ax1.set_cycle('linestyle', ['--', '-.', ':']) - ax1.set_cycle('linewidth', [3, 1]) + ax1.set_cycle('linewidth', [3, 1]) ax1.clear_cycle('linestyle') ax1.plot(yy) - - + + @image_comparison(baseline_images=['clear_all_cycle']) def test_clear_all_cycle(): - x = np.linspace(0, 2*np.pi) - offsets = np.linspace(0, 2*np.pi, 4, endpoint=False) + x = np.linspace(0, 2 * np.pi) + offsets = np.linspace(0, 2 * np.pi, 4, endpoint=False) yy = np.transpose([np.sin(x + phi) for phi in offsets]) - fig, ax1 = plt.subplots(nrows=1) + fig, ax1 = plt.subplots(nrows=1) ax1.set_color_cycle(['c', 'm', 'y', 'k']) ax1.set_cycle('linestyle', ['--', '-.', ':']) - ax1.set_cycle('linewidth', [3, 1]) + ax1.set_cycle('linewidth', [3, 1]) ax1.clear_all_cycle() ax1.plot(yy) - \ No newline at end of file From 288561afa0921f59d42cc55d739a0de01cf9f29d Mon Sep 17 00:00:00 2001 From: Jason Liw Yan Chong Date: Sun, 5 Apr 2015 20:17:50 -0400 Subject: [PATCH 4/6] Fixed small typo in streamplot.py which caused travis to fail --- lib/matplotlib/streamplot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/matplotlib/streamplot.py b/lib/matplotlib/streamplot.py index b1ef343c78a9..e2f5f441005d 100644 --- a/lib/matplotlib/streamplot.py +++ b/lib/matplotlib/streamplot.py @@ -80,7 +80,7 @@ def streamplot(axes, x, y, u, v, density=1, linewidth=None, color=None, transform = axes.transData if color is None: - color = axes._get_lines.get_next_color() + color = axes._get_lines.cycle.get_next_color() if linewidth is None: linewidth = matplotlib.rcParams['lines.linewidth'] From c68e0d94bce5f19933cdc82b4d8c9c8136c9784f Mon Sep 17 00:00:00 2001 From: Jason Liw Yan Chong Date: Sun, 5 Apr 2015 20:50:50 -0400 Subject: [PATCH 5/6] Fixed spacing for pep8 --- lib/matplotlib/axes/_base.py | 13 +++++++------ lib/matplotlib/cycle.py | 4 ++-- lib/matplotlib/rcsetup.py | 10 ++++++---- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/lib/matplotlib/axes/_base.py b/lib/matplotlib/axes/_base.py index 21ffaefe654c..8fd6c28197f4 100644 --- a/lib/matplotlib/axes/_base.py +++ b/lib/matplotlib/axes/_base.py @@ -142,7 +142,8 @@ def __init__(self, axes, command='plot'): self.cycle = mcycle.Cycle() def __getstate__(self): - return {'axes': self.axes, 'command': self.command, 'cycle': self.cycle} + return {'axes': self.axes, 'command': self.command, + 'cycle': self.cycle} def __setstate__(self, state): self.__dict__ = state.copy() @@ -966,22 +967,22 @@ def set_cycle(self, style, slist): """ Set the cycle for a line attribute for any future plot commands on this Axes - + *style* is a key to a dictionary for cycles in the cycle class *slist* is a list of mpl style specifiers """ self._get_lines.cycle.set_cycle(style, slist) - + def clear_all_cycle(self): """ Clear all the current line attribute cycles """ self._get_lines.cycle.clear_all_cycle() - + def clear_cycle(self, style): """ Clear a cycle for a line attribute specified by style - + *style* is a key to a dictionary for cycles in the cycle class """ self._get_lines.cycle.clear_cycle(style) @@ -999,7 +1000,7 @@ def set_line_cycle(self, llist): """ Set the line style cycle for any future plot commands on this Axes. - + *llist* is a list of mpl line style specifiers. """ self._get_lines.cycle.set_line_cycle(llist) diff --git a/lib/matplotlib/cycle.py b/lib/matplotlib/cycle.py index 1b70026030f5..0b6d54df0887 100644 --- a/lib/matplotlib/cycle.py +++ b/lib/matplotlib/cycle.py @@ -105,8 +105,8 @@ def clear_all_cycle(self): def set_line_cycle(self, llist=None): """ - Sets a line style cycle to be used for the lines on the graph, if none are - specified the default line style cycle will be used + Sets a line style cycle to be used for the lines on the graph, + if none are specified the default line style cycle will be used """ if llist is None: llist = rcParams['axes.line_cycle'] diff --git a/lib/matplotlib/rcsetup.py b/lib/matplotlib/rcsetup.py index c5e9cd0c6f73..73a71baacd3f 100644 --- a/lib/matplotlib/rcsetup.py +++ b/lib/matplotlib/rcsetup.py @@ -234,6 +234,7 @@ def __call__(self, s): except ValueError: raise ValueError('Could not convert all entries to ints') + def validate_line(s): 'return a valid arg' if s in (None, 'none', 'None', ' ', ''): @@ -294,6 +295,7 @@ def validate_colorlist(s): msg = "'s' must be of type [ string | list | tuple ]" raise ValueError(msg) + def validate_linelist(s): 'return a list of colorspecs' if isinstance(s, six.string_types): @@ -304,6 +306,7 @@ def validate_linelist(s): msg = "'s' must be of type [ string | list | tuple ] and non empty" raise ValueError(msg) + def validate_stringlist(s): 'return a list' if isinstance(s, six.string_types): @@ -555,8 +558,8 @@ def __call__(self, s): 'lines.marker': ['None', six.text_type], # black 'lines.markeredgewidth': [0.5, validate_float], 'lines.markersize': [6, validate_float], # markersize, in points - 'lines.markeredgecolor' : ['auto', validate_markercolor], - 'lines.markerfacecolor' : ['auto', validate_markercolor], + 'lines.markeredgecolor': ['auto', validate_markercolor], + 'lines.markerfacecolor': ['auto', validate_markercolor], 'lines.antialiased': [True, validate_bool], # antialised (no jaggies) 'lines.dash_joinstyle': ['round', validate_joinstyle], 'lines.solid_joinstyle': ['round', validate_joinstyle], @@ -664,8 +667,7 @@ def __call__(self, s): 'axes.unicode_minus': [True, validate_bool], 'axes.color_cycle': [['b', 'g', 'r', 'c', 'm', 'y', 'k'], validate_colorlist], # cycle of plot - # line colors - 'axes.line_cycle':[['-'],validate_linelist], + 'axes.line_cycle': [['-'], validate_linelist], 'axes.xmargin': [0, ValidateInterval(0, 1, closedmin=True, closedmax=True)], # margin added to xaxis From f8287449f6953f8a3a2a4b019268ea3148a91de5 Mon Sep 17 00:00:00 2001 From: Jason Liw Yan Chong Date: Wed, 8 Apr 2015 22:25:20 -0400 Subject: [PATCH 6/6] Fixed all the suggestions made --- lib/matplotlib/cycle.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/matplotlib/cycle.py b/lib/matplotlib/cycle.py index 0b6d54df0887..a13024a40a7b 100644 --- a/lib/matplotlib/cycle.py +++ b/lib/matplotlib/cycle.py @@ -3,7 +3,7 @@ from matplotlib import rcParams -class Cycle: +class Cycle(object): def __init__(self): """ @@ -36,15 +36,18 @@ def __setstate__(self, state): for style in self._styles_list.keys(): self.set_cycle(style, self._styles_list[style]) - def next(self, args={}): + def next(self, args=None): """ Returns the next set of line attributes for a line on the graph to use *args* is an optional dictionary of style arguments Styles that already exist in *args* will not be cycled through """ - args = args.copy() + if args is None: + args = {} + else: + args = args.copy() for style in self._styles.keys(): - if self._styles[style] != None and style not in args: + if self._styles[style] is not None and style not in args: args[style] = six.next(self._styles[style]) return args