Closed
Description
Bug report
When specifying a marker as a numpy array of 3 or fewer vertices (e.g. a line-segment marker), a ValueError is raised.
Code for reproduction
import numpy as np
import matplotlib.pyplot as plt
mrk_array = np.array([[-0.5, 0],
[0.5, 0]])
plt.plot(0, 0, marker=mrk_array)
/Library/Python/2.7/site-packages/matplotlib/markers.pyc in set_marker(self, marker)
233 def set_marker(self, marker):
234 if (iterable(marker) and len(marker) in (2, 3) and
--> 235 marker[1] in (0, 1, 2, 3)):
236 self._marker_function = self._set_tuple_marker
237 elif isinstance(marker, np.ndarray):
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
I'm getting this both for MPL v1.5.3, and HEAD of master. I think this should be as simple as moving the isinstance(marker, np.ndarray)
check to come first.
Metadata
Metadata
Assignees
Labels
No labels