我发现 Python、numpy 或 matplotlib 的一个奇怪行为。
请在 ipython 上使用 pylab 执行以下代码:
>>> import numpy as np
>>> import numpy.random as nr
>>> import matplotlib.pyplot as mp
>>> data = nr.rand(50, 2)
>>> mp.scatter(data[:, 0], data[:, 1])
>>> trans = np.asmatrix(data.T)
>>> mp.scatter(trans[0, :], trans[1, :])
>>> all(data == trans.T)
我预计此代码创建的两个图形完全相同,但它们看起来略有不同。代码的最后一行也暗示它们完全相同。
问题是什么?
python 2.7.4,IPython 0.13.2,pylab 1.7.1,numpy 1.7.1,matplotlib 1.2.0