I think I see a breakage of the scatter call that I think should work and did
work before
https://github.com/matplotlib/matplotlib/commit/be34210a8c09fcd639ece583eb5c0acb855222b6
This is running on windows 7 (32 bit) with numpy 1.8 and current master.
The example is:
···
***
import numpy
from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
from matplotlib.figure import Figure
POINTS = 500
figure = Figure(figsize=(6, 6), dpi=72)
ax = figure.add_subplot(1, 1, 1, projection=None)
scat = ax.scatter(numpy.arange(POINTS), numpy.sin(numpy.arange(POINTS)))
***
I get on current master
***
Traceback (most recent call last):
File "C:\work\mpl_scatter_example.py", line 9, in <module>
scat = ax.scatter(numpy.arange(POINTS), numpy.sin(numpy.arange(POINTS)))
File "C:\Python27\lib\site-packages\matplotlib\axes\_axes.py", line 3690, in scatter
self.add_collection(collection)
File "C:\Python27\lib\site-packages\matplotlib\axes\_base.py", line 1459, in add_collection
self.update_datalim(collection.get_datalim(self.transData))
File "C:\Python27\lib\site-packages\matplotlib\collections.py", line 198, in get_datalim
offsets, transOffset.frozen())
File "C:\Python27\lib\site-packages\matplotlib\path.py", line 977, in get_path_collection_extents
master_transform, paths, transforms, offsets,offset_transform))
ValueError: object too deep for desired array
***
I did very little troubleshooting beyond confirming that this works before the
merge mentioned in the first paragraph.
Joel
I think I see a breakage of the scatter call that I think should work and did
work before
Merge pull request #3646 from mdboom/decxx-backend-agg · matplotlib/matplotlib@be34210 · GitHub
This is running on windows 7 (32 bit) with numpy 1.8 and current master.
Ugh, I tried this same example on my ubuntu box and it works. I update this
diagnosis to "scatter is broken on windows since removing PyCXX"; note that I
do not get a traceback with the code below if I replace "scatter" with "plot".
Being that windows devs are scarce, I'll be digging into this more. I
certainly welcome any clues as it seems very bizarre to me so far.
Joel
···
On Mon, Nov 17, 2014 at 09:36:50AM -0500, Joel B. Mohler wrote:
The example is:
***
import numpy
from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
from matplotlib.figure import Figure
POINTS = 500
figure = Figure(figsize=(6, 6), dpi=72)
ax = figure.add_subplot(1, 1, 1, projection=None)
scat = ax.scatter(numpy.arange(POINTS), numpy.sin(numpy.arange(POINTS)))
***
I get on current master
***
Traceback (most recent call last):
File "C:\work\mpl_scatter_example.py", line 9, in <module>
scat = ax.scatter(numpy.arange(POINTS), numpy.sin(numpy.arange(POINTS)))
File "C:\Python27\lib\site-packages\matplotlib\axes\_axes.py", line 3690, in scatter
self.add_collection(collection)
File "C:\Python27\lib\site-packages\matplotlib\axes\_base.py", line 1459, in add_collection
self.update_datalim(collection.get_datalim(self.transData))
File "C:\Python27\lib\site-packages\matplotlib\collections.py", line 198, in get_datalim
offsets, transOffset.frozen())
File "C:\Python27\lib\site-packages\matplotlib\path.py", line 977, in get_path_collection_extents
master_transform, paths, transforms, offsets,offset_transform))
ValueError: object too deep for desired array
***
I did very little troubleshooting beyond confirming that this works before the
merge mentioned in the first paragraph.
Joel