File tree 1 file changed +13
-7
lines changed 1 file changed +13
-7
lines changed Original file line number Diff line number Diff line change 44
44
rcParams = matplotlib .rcParams
45
45
46
46
47
+ def _has_item (data , name ):
48
+ """Return whether *data* can be item-accessed with *name*.
49
+
50
+ This supports data with a dict-like interface (`in` checks item
51
+ availability) and with numpy.arrays.
52
+ """
53
+ try :
54
+ return name in data or name in data .dtype .names
55
+ except (AttributeError , TypeError ):
56
+ return False
57
+
58
+
47
59
def _plot_args_replacer (args , data ):
48
60
if len (args ) == 1 :
49
61
return ["y" ]
50
62
elif len (args ) == 2 :
51
63
# this can be two cases: x,y or y,c
52
- if (not args [1 ] in data and
53
- not (hasattr (data , 'dtype' ) and
54
- hasattr (data .dtype , 'names' ) and
55
- data .dtype .names is not None and
56
- args [1 ] in data .dtype .names )):
57
- # this is not in data, so just assume that it is something which
58
- # will not get replaced (color spec or array like).
64
+ if _has_item (data , args [1 ]):
59
65
return ["y" , "c" ]
60
66
# it's data, but could be a color code like 'ro' or 'b--'
61
67
# -> warn the user in that case...
You can’t perform that action at this time.
0 commit comments