I noticed that at least in the CloudXD classes, PAIDA uses the types library.
This is very inconvenient for use with numpy arrays.
For example, the following diff shows how to make use of duck typing in Cloud1D.
RCS file: /cvsroot/paida/paida/paida/paida_core/ICloud1D.py,v
retrieving revision 1.15
diff -r1.15 ICloud1D.py
< if isinstance(data1, types.ListType) and (data2 == None) and (data3 == None):
> if hasattr(data1, '__iter__') and (data2 == None) and (data3 == None):
This can easily be extended to the other methods as well. The reason is that it will be easier to integrate with numpy/scipy.
Oh, and something else:
Maybe I'm the only one who thinks so, but could the creation of threads and the gui initialization be moved to the PlotterFactory? Or at least out of the default library.
I use paida mainly for histogramming of data, and hardly use the plotting at all. In fact, most of the time I work remotely.
So I have to import the guiselector and choose the batch backend to prevent paida from opening a window every time I want to inspect a file.