Matthew Auger wrote the following on 08/13/2007 11:15 AM:
I'm trying to make high-dimensionality scatter plots, but I've run into a
couple of issues. I'm using scatter() but including both edge and face
color mapping; I doubt this will provide a meaningful display, but I'd
like to try it and see.... Unfortunately, passing data arrays to facecolor
and edgecolor does *not* map the data arrays to colors--instead I get
gray edges and/or faces. As a side note, none of the 'usual' keyword
shortcuts (ec, fc, lw for example) work with scatter().
Does the following demonstrate the issue?
···
--------------
import pylab
x = [a for a in range(10)]
y = [a**2 for a in range(10)]
s = [a**3 for a in range(10)]
c = x
ec = c[:]
ec.reverse()
a = pylab.scatter(x,y,s,
facecolor=pylab.cm.jet(c),
edgecolor=pylab.cm.jet(ec))
print a._facecolors
print a._edgecolors
pylab.show()
-------------
So we create a scatter plot with different sizes, facecolors, and
edgecolors. The collection clearly has the facecolors/edgecolors
stored. However, resulting image does not show the different
facecolors/edgecolors. Each circle is given the default
facecolor/edgecolor (as axes.py indicates it should)...but It seems
like something is not getting updated. Comments anyone? ...seems
like a bug at first glance...
Confirmed with version 0.90.1.