Folks,

still in my exploring phase of Matplotlib's ecosystem I ran into 
following mismatch between the APIs of BoundaryNorm and Normalize.

See the following example:

import matplotlib as mpl
c = mpl.cm.get_cmap()
bnorm = mpl.colors.BoundaryNorm([0,1,2], c.N)
nnorm = mpl.colors.Normalize(0, 2)

# This works:
In [8]: c(nnorm(1.1))
Out[8]: (0.64199873497786197, 1.0, 0.32574320050600891, 1.0)

# This doesn't:
In [9]: c(bnorm(1.1))
(...)
TypeError: 'numpy.int16' object does not support item assignment

# But this works:
In [10]: c(bnorm([1.1]))
Out[10]: array([[ 0.5,  0. ,  0. ,  1. ]])

 From the doc I would expect BoundaryNorm and Normalize to work the same 
way. I find the error sent by BoundaryNorm quite misleading.

Should I fill a bug report for this?

Thanks!

Fabien




------------------------------------------------------------------------------
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to