-
Notifications
You must be signed in to change notification settings - Fork 341
ETH replication complete (without classification). Re-working 'plot_spikes()' function. #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
Conversation
…pikes()' function.
|
Not a problem at all. I'll definitely be trying to stay more consistent with the code style. I just looked into the changes you made. It looks good. I'll be trying my best to adopt the style for when I implement general plotting function using monitors and keywords a we discussed before (after my exam today). I just have one concern. Your axis don't have any values to them. Is it not important to be able to see which neurons are spiking at which time? Technically, we can still do that but we would have to count it ourselves. |
|
It would be nice to see which neurons are spiking at which times, but depending on what's being plotted, the axis ticks could become quite cluttered. For example, imagine a simulation for 10,000ms (10 seconds) and the corresponding tick marks. In the old code, there would be 10,000 / 5 = 2,000 tick marks on a figure only 12 inches wide, giving one tick mark every 0.006 inches. Even with tick marks, it is still not very clear when certain spikes have happened, depending on the frequency of the tick marks. A good compromise would be to make the tick mark frequency a parameter. For now, I prefer no tick marks at all, since it's neater and the plots are still instructive if the user knows how long the recording is. |
|
Yup, I completely agree and we can leave it at no tick marks for now. However, I'm interested in trying frequency being a parameter. The hard-coded 5 from before was sort of just a test. I was going to look into making it dynamic and adjust according to the time as you're mentioning. I think plotting 10sec worth of spikes might produce a cluttered graph altogether which is where the time parameter would help. Instead, one could divide up the times by let's say 2000ms per figure and plot those. The frequency parameter could then take up a nifty little formula (I don't know what yet). |
|
So, now we have working functions that plot different things of the network. Are we still trying to look having a general plotting function? With keywords, the general plotting function could call the current functions instead? |
|
Yeah, I think it would be great to have. I think the specific functions are great for our particular experiments (to reduce cognitive strain), but a general one could do |
|
Cool. Another thing that I was thinking of is to include the number of neurons parameter for plotting (not sure if necessary). If we use 6400 neurons, that'd be a pretty big plot. So, it'd work same as time and plot the desired set of neurons to have cleaner plots to look at. |
|
Great idea! |
fixed indexing of davis dataset
@hqkhan, notice that I've made some changes to your
plot_spikes()function. Namely, Imatplotlibcalls (e.g.,plt.subplots())Otherwise, it's a great implementation. I mostly wanted the code to fit into the overall style of the library.