Initial visualizations of your data

This notebook is meant to let you quickly look at your post-manually sorted data


In [1]:
import numpy as np
import scipy as sp
import matplotlib.pyplot as plt
import os
import sys
import ephys.rasters
from ephys import core, events, rasters
import pandas as pd

Load the data

Set 'block_path' to the path of the folder containing your post-manually sorted data


In [2]:
block_path = '/home/brad/cube/Ice/kperks/B1112/klusta/phy041316/Pen01_Lft_AP300_ML700__Site04_Z3300__B1112_cat_P01_S04_1/'
block_path = '/mnt/cube/btheilma/emily/B1171/klusta/phy103116/Pen02_Lft_AP2500_ML1200__Site14_Z2570__B1171_cat_P02_S14_1/'
block_path = '/mnt/cube/btheilma/emily/B1171/klusta/phy103116/Pen02_Lft_AP2500_ML1200__Site15_Z2780__B1171_cat_P02_S15_1/'
block_path = '/mnt/cube/btheilma/emily/B604/klusta/phy103116/Pen01_Lft_AP2300_ML1250__Site13_Z2641__B604_cat_P01_S13_1/'
block_path = '/mnt/cube/btheilma/emily/B604/klusta/phy103116/Pen01_Lft_AP2300_ML1250__Site15_Z2780__B604_cat_P01_S15_1/'
block_path = '/home/brad/emily/P01S18/'
#block_path = '/mnt/cube/btheilma/emily/B604/klusta/phy103116/Pen01_Lft_AP2300_ML1250__Site16_Z2865__B604_cat_P01_S16_1/'
spikes     = core.load_spikes(block_path)
clusters   = core.load_clusters(block_path)
trials     = events.load_trials(block_path)
fs         = core.load_fs(block_path)
rec        = 0

In [4]:
st = trials[trials['stimulus']=='T3S3D40']
print(st)
Activetrials = trials[pd.notnull(trials['response'])]


     recording  time_samples stimulus  stimulus_end response  response_time  \
219          3         50001  T3S3D40        162499        L       166542.0   
330          4         50001  T3S3D40        162500        L       162502.0   
440          5         50001  T3S3D40        162499        L       162680.0   
484          7         50001  T3S3D40        162500        R       169945.0   
495          8         50001  T3S3D40        162500        R       179319.0   
506          9         50001  T3S3D40        162500        L       187544.0   
132         22         50001  T3S3D40        162500        R       177633.0   
142         23         50001  T3S3D40        162500        L       250816.0   
208         29         50001  T3S3D40        162500        R       165876.0   
220         30         50001  T3S3D40        162501        N       275001.0   
231         31         50001  T3S3D40        162500        L       211549.0   
275         35         50001  T3S3D40        162500        L       162507.0   
286         36         50001  T3S3D40        162499        L       167944.0   
342         41         50001  T3S3D40        162499        R       165209.0   
353         42         50001  T3S3D40        162500        L       164036.0   
419         48         50001  T3S3D40        162500        R       164011.0   
441         50         50001  T3S3D40        162499        L       162500.0   
452         51         50001  T3S3D40        162500        L       162502.0   
472         59         50001  T3S3D40        162500        L       162501.0   
478         64         50001  T3S3D40        162499        L       166821.0   
481         67         50001  T3S3D40        162500        R       164504.0   
482         68         50001  T3S3D40        162500        L       164211.0   
488         73         50001  T3S3D40        162500        L       167456.0   
492         77         50001  T3S3D40        162500        R       162502.0   
493         78         50001  T3S3D40        162500        L       252139.0   
502         86         50001  T3S3D40        162501        R       162503.0   
503         87         50001  T3S3D40        162500        R       221077.0   
504         88         50001  T3S3D40        162500        R       208525.0   
505         89         50001  T3S3D40        162500        L       219139.0   
510         93         50001  T3S3D40        162501        L       205156.0   
..         ...           ...      ...           ...      ...            ...   
13         110         50001  T3S3D40        162501      NaN            NaN   
17         114         50001  T3S3D40        162501      NaN            NaN   
19         116         50001  T3S3D40        162501      NaN            NaN   
20         117         50001  T3S3D40        162501      NaN            NaN   
29         125         50001  T3S3D40        162501      NaN            NaN   
30         126         50001  T3S3D40        162501      NaN            NaN   
35         130         50001  T3S3D40        162501      NaN            NaN   
370        435         50000  T3S3D40        162500      NaN            NaN   
374        439         50001  T3S3D40        162501      NaN            NaN   
377        441         50001  T3S3D40        162501      NaN            NaN   
379        443         50001  T3S3D40        162501      NaN            NaN   
381        445         50001  T3S3D40        162501      NaN            NaN   
389        452         50001  T3S3D40        162501      NaN            NaN   
392        455         50001  T3S3D40        162501      NaN            NaN   
393        456         50001  T3S3D40        162501      NaN            NaN   
394        457         50001  T3S3D40        162501      NaN            NaN   
405        467         50001  T3S3D40        162501      NaN            NaN   
410        471         50001  T3S3D40        162500        L       165670.0   
415        476         50001  T3S3D40        162501        L       165685.0   
416        477         50001  T3S3D40        162500        L       178174.0   
422        482         50001  T3S3D40        162501        R       171577.0   
423        483         50001  T3S3D40        162501        L       199759.0   
444        502         50001  T3S3D40        162500        L       177574.0   
449        507         50001  T3S3D40        162500        R       185754.0   
450        508         50001  T3S3D40        162501        L       190643.0   
451        509         50001  T3S3D40        162500        L       204970.0   
453        510         50001  T3S3D40        162501        R       162503.0   
454        511         50001  T3S3D40        162500        L       246623.0   
455        512         50001  T3S3D40        162501        L       191225.0   
459        516         50001  T3S3D40        162500        L       243065.0   

    consequence correct                   datetime correction  
219           f    True 2016-07-05 13:00:26.425200      False  
330           F    True 2016-07-05 13:00:35.933960      False  
440           f    True 2016-07-05 13:00:47.254400      False  
484           T   False 2016-07-05 13:01:08.021800      False  
495           T   False 2016-07-05 13:01:15.919760       True  
506           f    True 2016-07-05 13:01:24.192640       True  
132           T   False 2016-07-05 13:03:29.031280      False  
142           f    True 2016-07-05 13:03:37.236720       True  
208           T   False 2016-07-05 13:04:43.452400      False  
220         NaN     NaN 2016-07-05 13:04:51.187560       True  
231           F    True 2016-07-05 13:05:04.287640       True  
275           F    True 2016-07-05 13:05:44.662720      False  
286           F    True 2016-07-05 13:05:55.983240      False  
342           T   False 2016-07-05 13:06:41.978240      False  
353           f    True 2016-07-05 13:06:49.686720       True  
419           T   False 2016-07-05 13:07:44.512440      False  
441           f    True 2016-07-05 13:07:57.273120       True  
452           f    True 2016-07-05 13:08:06.621680      False  
472           F    True 2016-07-05 13:09:20.954160      False  
478           f    True 2016-07-05 13:10:06.452240      False  
481           T   False 2016-07-05 13:10:33.798120      False  
482           f    True 2016-07-05 13:10:41.478440       True  
488           f    True 2016-07-05 13:11:32.090000      False  
492           T   False 2016-07-05 13:12:13.030880      False  
493           f    True 2016-07-05 13:12:20.631120       True  
502           T   False 2016-07-05 13:13:44.216360      False  
503           T   False 2016-07-05 13:13:51.816600       True  
504           T   False 2016-07-05 13:14:01.759840       True  
505           f    True 2016-07-05 13:14:11.201000       True  
510           f    True 2016-07-05 13:14:50.532440      False  
..          ...     ...                        ...        ...  
13          NaN     NaN 2016-07-05 13:17:09.372440       True  
17          NaN     NaN 2016-07-05 13:17:41.681760       True  
19          NaN     NaN 2016-07-05 13:17:57.777920       True  
20          NaN     NaN 2016-07-05 13:18:05.694920       True  
29          NaN     NaN 2016-07-05 13:19:06.023080       True  
30          NaN     NaN 2016-07-05 13:19:14.249200       True  
35          NaN     NaN 2016-07-05 13:19:44.261880       True  
370         NaN     NaN 2016-07-05 14:05:55.237440       True  
374         NaN     NaN 2016-07-05 14:06:22.127760       True  
377         NaN     NaN 2016-07-05 14:06:38.141600       True  
379         NaN     NaN 2016-07-05 14:06:53.751760       True  
381         NaN     NaN 2016-07-05 14:07:10.292880       True  
389         NaN     NaN 2016-07-05 14:08:04.372440       True  
392         NaN     NaN 2016-07-05 14:08:28.512440       True  
393         NaN     NaN 2016-07-05 14:08:36.743800       True  
394         NaN     NaN 2016-07-05 14:08:45.137640       True  
405         NaN     NaN 2016-07-05 14:10:01.261840       True  
410           F    True 2016-07-05 14:10:32.419600       True  
415           F    True 2016-07-05 14:11:18.713560      False  
416           f    True 2016-07-05 14:11:30.160080      False  
422           T   False 2016-07-05 14:12:22.559280      False  
423           f    True 2016-07-05 14:12:30.522480       True  
444           f    True 2016-07-05 14:15:45.847920      False  
449           T   False 2016-07-05 14:16:32.221920      False  
450           f    True 2016-07-05 14:16:40.752200       True  
451           f    True 2016-07-05 14:16:51.226760      False  
453           T   False 2016-07-05 14:17:02.275440      False  
454           f    True 2016-07-05 14:17:09.875680       True  
455           f    True 2016-07-05 14:17:22.591600      False  
459           f    True 2016-07-05 14:18:04.071920      False  

[64 rows x 10 columns]

Plot rasters of each trial from each Good unit for all stims


In [7]:
from importlib import reload
reload(rasters)
good_clusters = clusters[clusters['quality']=='Good']
good_cluster_ids = good_clusters['cluster'].unique()
print(len(good_cluster_ids))

MUA_clusters = clusters[clusters['quality']=='MUA']
good_cluster_ids=MUA_clusters['cluster'].unique()


25

In [5]:
t=np.unique(trials['stimulus'].values)
print(t)
len(t)
stims = trials['stimulus'].unique()
print(stims[4])


['Repeat_15_1052sec5_sqzdn_65db' 'Repeat_23_C22sec2_sqzdn_65db'
 'Repeat_44_B32sec1_sqzup_65db' 'Repeat_58_1052sec3_sqzup_65db' 'T-1S-1D15'
 'T-1S-1D23' 'T-1S-1D44' 'T-1S-1D58' 'T23S15D-1' 'T23S15D44' 'T23S15D58'
 'T23S15D60' 'T23S23D-1' 'T23S23D44' 'T23S23D52' 'T23S23D58' 'T58S44D-1'
 'T58S44D15' 'T58S44D21' 'T58S44D23' 'T58S58D-1' 'T58S58D15' 'T58S58D23'
 'T58S58D7']
T58S58D-1

In [8]:
# We have 16 stims, so let's go with a 4x4 subplot layout
subplot_xy = [6, 4]
figsize = (28,20)
period = [-2, 2]

# Make a figure directory
raster_dir = os.path.join(block_path, 'rasters')
if not os.path.exists(raster_dir):
    os.mkdir(raster_dir)

for clusterID in good_cluster_ids:
    print(clusterID)
    fig = rasters.plot_unit_raster_emily(spikes, trials, clusterID, period, rec, fs, subplot_xy, figsize)
    raster_fname = os.path.join(raster_dir, 'unit{}_raster.png'.format(str(clusterID)))
    fig.savefig(raster_fname)
    plt.close(fig)


4
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
6
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
8
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
9
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
10
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
11
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
13
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
14
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
15
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
17
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
18
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
22
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
23
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
25
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
26
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
30
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
33
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
35
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
44
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
69
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
70
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
71
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
73
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
74
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
75
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
76
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
77
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
80
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
81
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
82
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
91
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
98
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
99
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
100
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
101
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
103
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
104
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
107
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
109
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
114
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
115
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
125
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
137
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
138
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
146
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
147
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
154
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
155
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
163
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
164
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
166
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
168
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
169
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
170
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7
177
Repeat_15_1052sec5_sqzdn_65db
Repeat_23_C22sec2_sqzdn_65db
Repeat_44_B32sec1_sqzup_65db
Repeat_58_1052sec3_sqzup_65db
T-1S-1D15
T-1S-1D23
T-1S-1D44
T-1S-1D58
T23S15D-1
T23S15D44
T23S15D58
T23S15D60
T23S23D-1
T23S23D44
T23S23D52
T23S23D58
T58S44D-1
T58S44D15
T58S44D21
T58S44D23
T58S58D-1
T58S58D15
T58S58D23
T58S58D7

See a cell / stim combo that looked interesting? Plot it here!


In [ ]:
reload(rasters)
clusterID = 9
stims = ['E_scaled_burung', 'C_scaled_burung', 'B_scaled_burung', 'H_scaled_burung']
stims = ['T3S3D-1', 'T3S3D40', 'T3S8D-1', 'T3S8D40', 'T40S40D-1', 'T40S40D3', 'T40S70D-1', 'T40S70D3']
trials_to_plot = trials[trials['stimulus'].isin(stims)]

subplot_xy=[4,2]
figsize=(28, 20)
period=[-2, 2]
# Make a figure directory
raster_dir = os.path.join(block_path, 'rasters')
if not os.path.exists(raster_dir):
    os.mkdir(raster_dir)

fig = rasters.plot_unit_raster_emily(spikes, trials_to_plot, clusterID, period, rec, fs, subplot_xy, figsize)
raster_fname = os.path.join(raster_dir, 'unit{}_raster_specific_stims.png'.format(str(clusterID)))
fig.savefig(raster_fname)
plt.close(fig)

Plot Average, Gaussian Smoothed PSTHs for each Unit


In [ ]:

Plot rasters of each MUA unit


In [ ]:
mua_clusters = clusters[clusters['quality']=='MUA']
mua_cluster_ids = good_clusters['cluster'].unique()

reload(rasters)
mua_clusters = clusters[clusters['quality']=='MUA']
mua_cluster_ids = mua_clusters['cluster'].unique()
print(len(good_cluster_ids))
# We have 16 stims, so let's go with a 4x4 subplot layout
subplot_xy = [6,4]
figsize = (22,20)
period = [-2, 2]

# Make a figure directory
raster_dir = os.path.join(block_path, 'rasters')
if not os.path.exists(raster_dir):
    os.mkdir(raster_dir)

for clusterID in mua_cluster_ids:
    print(clusterID)
    fig = rasters.plot_unit_raster_emily(spikes, trials, clusterID, period, rec, fs, subplot_xy, figsize)
    raster_fname = os.path.join(raster_dir, 'unit{}_MUAraster.png'.format(str(clusterID)))
    fig.savefig(raster_fname)
    plt.close(fig)

In [9]:
from ephys.spiketrains import get_spiketrain

def plot_trial_raster_emily(spikes, trials, clusters, trialID, 
                            stim, period, fs, ax=None, **kwargs):

    stim_trials = trials[trials['stimulus']==stim]
    stim_recs = stim_trials['recording'].values
    ntrials = len(stim_trials)

    stim_starts = stim_trials['time_samples'].values
    stim_ends = stim_trials['stimulus_end'].values

    stim_start = stim_starts[trialID]
    stim_end = stim_ends[trialID]
    stim_end_seconds = (stim_end - stim_start)/fs
    srec = stim_recs[trialID]

    clusterIDs = clusters['cluster'].values
    window = [period[0], stim_end_seconds+period[1]]
    raster_data = []
    for clu in clusterIDs:
        sptrain = get_spiketrain(srec, stim_start, clu, spikes, window, fs)
        raster_data.append(sptrain)
    rasters.do_raster(raster_data, window, [0, stim_end_seconds], ax, **kwargs)

In [11]:
%matplotlib inline
cluster_group = ['Good', 'MUA']
if cluster_group != None:
    mask = np.ones(len(clusters.index)) < 0
    for grp in cluster_group:
        mask = np.logical_or(mask, clusters['quality'] == grp)
goodMUAclusters = clusters[mask]
fig = plt.figure()
ax = plt.gca()
plot_trial_raster_emily(spikes, Activetrials, goodMUAclusters, 6, 'T40S40D3', [-2, 2], 0, fs, ax=ax, spike_color='b')
plot_trial_raster_emily(spikes, Activetrials, goodMUAclusters, 6, 'T40S70D3', [-2, 2], 0, fs, ax=ax, spike_color='y')

plt.show()



In [8]:
fig = plt.figure()
ax = plt.gca()
plot_trial_raster_emily(spikes, Activetrials, goodMUAclusters, 6, 'T40S70D3', [-2, 2], 0, fs, ax=ax)
plt.show()


Wide Narrow Correct Incorrect


In [4]:
from ephys.spiketrains import get_spiketrain
from ephys import clust

def plot_trial_raster_emily(spikes, trials, clusters, trialID, 
                            stim, period, fs, ax=None, **kwargs):

    stim_trials = trials[trials['stimulus']==stim]
    stim_recs = stim_trials['recording'].values
    ntrials = len(stim_trials)
    print('Ntrials: {}'.format(ntrials))

    stim_starts = stim_trials['time_samples'].values
    stim_ends = stim_trials['stimulus_end'].values

    stim_start = stim_starts[trialID]
    stim_end = stim_ends[trialID]
    stim_end_seconds = (stim_end - stim_start)/fs
    srec = stim_recs[trialID]

    clusterIDs = clusters['cluster'].values
    window = [period[0], stim_end_seconds+period[1]]
    raster_data = []
    for clu in clusterIDs:
        sptrain = get_spiketrain(srec, stim_start, clu, spikes, window, fs)
        raster_data.append(sptrain)
    rasters.do_raster(raster_data, window, [0, 2.0, 2.5, stim_end_seconds], ax, **kwargs)

In [5]:
correctTrials = trials[trials['correct']==True]
incorrectTrials = trials[trials['correct']==False]

widenarrow_threshold = 0.000230
cluster_group = ['Good', 'MUA']
clusters_list = clusters[clusters.quality.isin(cluster_group)]['cluster'].unique()
(wide, narrow) = clust.get_wide_narrow(block_path, clusters_list, widenarrow_threshold)

wideClus = clusters[clusters.cluster.isin(wide)]
narrowClus = clusters[clusters.cluster.isin(narrow)]
stims = correctTrials['stimulus'].unique()


/home/brad/.conda/envs/neuraltda/lib/python2.7/site-packages/scipy/interpolate/fitpack2.py:224: UserWarning: 
The maximal number of iterations maxit (set to 20 by the program)
allowed for finding a smoothing spline with fp=s has been reached: s
too small.
There is an approximation returned but the corresponding weighted sum
of squared residuals does not satisfy the condition abs(fp-s)/s < tol.
  warnings.warn(message)

In [9]:
%matplotlib inline
import seaborn as sns
sns.set_context('poster')
sns.set_style('white')
my_trial_nums = [0, 2]

In [ ]:
for stim in stims:
    print(stim)
   
    # plot Wide Correct / Wide Incorrect
    f, axarr = plt.subplots(2,2, figsize=(28, 12))
    #Target
    plot_trial_raster_emily(spikes, correctTrials, wideClus, my_trial_nums[0], stim, [-1, 1], fs, ax= axarr[0,0])
    axarr[0,0].set_ylabel('Wide Cluster')
    axarr[0,0].set_title(stim + ' correct')
    #SD
    plot_trial_raster_emily(spikes, incorrectTrials, wideClus, my_trial_nums[0], stim, [-1, 1], fs, ax= axarr[0,1])
    axarr[0,1].set_title(stim + ' incorrect')
    
    plot_trial_raster_emily(spikes, correctTrials, wideClus, my_trial_nums[1], stim, [-1, 1], fs, ax= axarr[1,0])
    axarr[1,0].set_ylabel('Wide Cluster')
    axarr[1,0].set_title(stim + ' correct')
    #SD
    plot_trial_raster_emily(spikes, incorrectTrials, wideClus, my_trial_nums[1], stim, [-1, 1], fs, ax= axarr[1,1])
    axarr[1,1].set_title(stim + ' incorrect')
    
    plt.savefig('/home/brad/figures/B604_P01S15_raster_wide_CvsX_2trials_{}.png'.format(stim))
    
    f, axarr = plt.subplots(2,2, figsize=(28, 12))
    #Target
    plot_trial_raster_emily(spikes, correctTrials, narrowClus, my_trial_nums[0], stim, [-1, 1], fs, ax= axarr[0,0])
    axarr[0,0].set_ylabel('Narrow Cluster')
    axarr[0,0].set_title(stim + ' correct')
    #SD
    plot_trial_raster_emily(spikes, incorrectTrials, narrowClus, my_trial_nums[0], stim, [-1, 1], fs, ax= axarr[0,1])
    axarr[0,1].set_title(stim + ' incorrect')
    
    plot_trial_raster_emily(spikes, correctTrials, narrowClus, my_trial_nums[1], stim, [-1, 1], fs, ax= axarr[1,0])
    axarr[1,0].set_ylabel('Narrow Cluster')
    axarr[1,0].set_title(stim + ' correct')
    #SD
    plot_trial_raster_emily(spikes, incorrectTrials, narrowClus, my_trial_nums[1], stim, [-1, 1], fs, ax= axarr[1,1])
    axarr[1,1].set_title(stim + ' incorrect')
    
    plt.savefig('/home/brad/figures/B604_P01S15_raster_narrow_CvsX_2trials_{}.png'.format(stim))
    # plot Narrow Correct / Narrow Incorrect


T3S3D-1
Ntrials: 12
Ntrials: 3
Ntrials: 12

In [10]:
for stim in ['T40S40D3']:
    f, axarr = plt.subplots(2,2, figsize=(28, 12))
    #Target
    plot_trial_raster_emily(spikes, correctTrials, narrowClus, my_trial_nums[0], stim, [-1, 1], fs, ax= axarr[0,0])
    axarr[0,0].set_ylabel('Narrow Cluster')
    axarr[0,0].set_title(stim + ' correct')
    #SD
    plot_trial_raster_emily(spikes, incorrectTrials, narrowClus, my_trial_nums[0], stim, [-1, 1], fs, ax= axarr[0,1])
    axarr[0,1].set_title(stim + ' incorrect')
    
    plot_trial_raster_emily(spikes, correctTrials, narrowClus, my_trial_nums[1], stim, [-1, 1], fs, ax= axarr[1,0])
    axarr[1,0].set_ylabel('Narrow Cluster')
    axarr[1,0].set_title(stim + ' correct')
    #SD
    plot_trial_raster_emily(spikes, incorrectTrials, narrowClus, my_trial_nums[1], stim, [-1, 1], fs, ax= axarr[1,1])
    axarr[1,1].set_title(stim + ' incorrect')
    
    plt.savefig('/home/brad/figures/B604_P01S15_raster_narrow_CvsX_2trials_{}.png'.format(stim))


Ntrials: 32
Ntrials: 18
Ntrials: 32
Ntrials: 18

In [ ]: