问题
I created a very simple scatter plot using pylab.
pylab.scatter(engineSize, fuelMile)
pylab.show()
The rest of the program isn't worth posting, because it's that line that's giving me the problem. When I change "scatter" to "plot" it graphs the data, but each point is part of a line and that makes the whole things a scribbly mess. I just want points, not a line, but I get this huge error message that ends with:
File "C:\Python26\lib\site-packages\numpy\core\fromnumeric.py", line 1643, in amin
return amin(axis, out)
TypeError: cannot perform reduce with flexible type
回答1:
I bet engineSize, fuelMile are stings, try printing them, if that is the case, you have to convert them to float before passing them as arguments to scatter
floatval = float(strval)
回答2:
Okay, so since this works, something must be wrong with your inputs. Clearly you need to post more, unless this "answer" solves your problem:
>>> import pylab
>>> pylab.scatter([500, 550, 700, 1100], [5.5, 6.5, 3.1, 9.7])
<matplotlib.collections.RegularPolyCollection object at 0x036F5610>
>>> pylab.show()
(graphing-type stuff ensues)
来源:https://stackoverflow.com/questions/1746312/why-wont-my-python-scatter-plot-work