-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
alternatives to chaco/traits #8
Comments
Obviously, you spent some time on this already...
On 07/11/12 14:16, fabioedoardoluigialberto wrote:
Giacomo Indiveri |
I have tried "using" guiqwt library before. The installation is totally smooth and glitch free for Ubuntu. What about Fedora ? Can you try and see if you can install it ? I just had to install about 114MB of additional packages when I tried installing guiqwt on my system. So if you have to install it manually, I have a feeling it might not be entirely trivial. |
I go all-in for those... 👍 I don't think we can find better solutions for the moment. Among the pros, I found the following:
I'll try on Fedora. EDIT: It works and it's beautiful. Love it. |
Hi everybody, There was a recent similar discussion about a month ago. I've tried guiqwt guiqwt is fast but not overly fast. I attached script I wrote that gives Regards, On Wed, Nov 7, 2012 at 5:41 AM, fabioedoardoluigialberto <
Emre Neftci, Phd. |
Right, now I remember. Spikeutils is nice but it would replace both the graphical and the data handling parts, basically what also NeuroTools or whatever branch we are using now is doing. Sticking to the simplest thing remains the safest option. In fact:
and I remember we mentioned it in our discussions dreaming of a tool with which we could handle both spiking and analog data from the chips. It's cool but we don't need it now I suppose. For what concerns only the graphical part, we don't need much written code, we should write it ourselves so that we know exactly what's going on, which means we should use the "mean_rate", "raster" and co. functions we already have. I don't want any more Enthought/NeuralEnsemble shocking experiences... Notice that both Neo and Spikeutils are listed as 0.2 version, which means alpha:
:) |
Agreed. Both are GPL so we can cannibalize some code in any case. This is On Wed, Nov 7, 2012 at 9:45 AM, fabioedoardoluigialberto <
Emre Neftci, Phd. |
Alright since we have an agreement, I will start off with creating a new branch "guigwt" where I will try and replace enthought stuff with guidata. But, at this juncture, we need to consider issue #4 and see if we can have a headless version which can then use the gui stuff. |
guiqwt :) Thanks for considering issue #4 On Wed, Nov 7, 2012 at 9:55 AM, sheiksadique [email protected]:
Emre Neftci, Phd. |
guidata has bugs with the sliders which is more or less the only functionality we really need. Also the plot rendering is not as fast as it was with chaco. So.. I think we should stop bothering with this guidata/guiqwt for a bit. |
Time for some modern visualization tools, folks. _spoiler_ I guess at the moment I'm tempted to have a deeper look at the matplotlib widgets, IPython html widgets and Qt. bokeh
matplotlib nbagg backend within the ipython/jupiter notebookI managed to handle biases easily with things like:
and a slider appears. Realtime plotting of streaming data using the nbagg backend requires to interact with the backend through some thread which I don't know how to and it's probably not worth the try. Maybe... matplotlib animation toolsVery easy to implement, the fastest implementation I obtained, thought still minor issues present (e.g., window rescaling). It may be hard to get widgets in but maybe animations and matplotlib widgets can be integrated in some way, somebody must have looked at it...
Qt4 and matplotlibIt's supposed to be the obvious way to go for standalone apps. Fast, probably as fast as the matplotlib animation, not very modern though, I still tend to prefer the fanciness of bokeh. Here is the PyQt4 code. This code works but for some weird reason the events are either sticking to the plot or the whole plot flashes, depending on how you tweak the canvas.draw() and canvas.blit() things... I guess I'm missing something.
|
This is the latest version of the qt 1D visualizer.
|
Thanks! Very glad to see that someone is working on this. Is there anyway you can write in dummy events so we can test? Thanks. |
You can edit the spike generator I have in this script. The basic usage is (you may have to tune the argument, look at the class definition code):
This will send spike trains with given rate to each specified (address, rate) pair. You may need to tune channel, host and so on... Sorry for being lazy. (By the way, a stimulator like this should also be part of PyNCS.) |
Agreed that it should be part of pyNCS. I get the error: /home/eneftci/Projects/lib/python2.7/site-packages/NeuroTools/io.py in () ImportError: cannot import name check_dependency :( |
Sorry I don't know about that issue... It seems to be pyST so I'm not sure how that can be triggered by the my scripts. Can you give more details? Following up on the topic, I've seen that the Manchester people use OpenGL (probably the way to go...) but their visualizer seems to be in a pretty basic form as ours is, judging by the code (I didn't run any of that). So, I just installed PyOpenGL and will keep you updated ;)
|
An other update. The great alternative is the solution I'm going after. For the aer1Dviewer there is basically the whole implementation in the examples (llok at the attachment), I just have to replace the data generation with the socket.recv thing from the aex server. For 2D viewers, I guess it's easy to go after a modification of the 1D viewer but I wouldnt be surprised to find something in the examples already. Note that a complete re-implementation based on plain wx-python is also tempting... |
Thanks Fabio! I agree that a complete re-implementation on wx-python would be ideal... g. Fabio Stefanini [email protected] writes:
Giacomo Indiveri Publications: https://goo.gl/SkWujh |
I'm sold on this one (But maybe because it was the only one I managed to run). Thanks! |
We once discussed some alternatives to chaco/traits packages. Remove dependencies from Enthought packages would mean easier, faster installations and no need for multiple python instances. Plus, Enthought documentation and support are poor.
What do you think?
The text was updated successfully, but these errors were encountered: