Exemplo n.º 1
0
    def flip_freq_am_tuning(self, freqsession, amsession, experiment=-1, site=-1, tetrodes=None, freqRange = [-0.1, 0.3], amRange = [-0.2, 0.8], colorEachCond=None):
        freqsessionList=[]
        amsessionList=[]
        experimentList=[]
        siteList=[]
        tetrodeList=[]
        amRangeList=[]
        freqRangeList=[]
        colorList=[]
        
        sessionObj = self.get_session_obj(freqsession, experiment, site)
        if not tetrodes:
            tetrodes=sessionObj.tetrodes

        from jaratoolbox import extraplots

        for tetrode in tetrodes:
            freqsessionList.append(freqsession)
            amsessionList.append(amsession)
            experimentList.append(experiment)
            siteList.append(site)
            tetrodeList.append(tetrode)
            amRangeList.append(amRange)
            freqRangeList.append(freqRange)
            colorList.append(colorEachCond)

        dataList=zip(freqsessionList, amsessionList, tetrodeList, experimentList, siteList, freqRangeList, amRangeList, colorList)
        flipper=extraplots.FlipThrough(self.plot_am_freq_tuning, dataList)
        return flipper
Exemplo n.º 2
0
    def flip_cluster_tuning(self, session, behavSuffix, tetrode, rasterRange=[-0.5, 1]):

        from jaratoolbox import extraplots

        sessions = []
        tetrodes = []
        behavSuffixs = []
        clusters = []

        bdata = self.loader.get_session_behavior(behavSuffix)
        currentFreq = bdata['currentFreq']
        currentIntensity = bdata['currentIntensity']

        spikeData = self.loader.get_session_spikes(sessionDir, tetrode, cluster)
        if spikeData.clusters is None:
            self.cluster_session(session, tetrode)
            spikeData = self.loader.get_session_spikes(sessionDir, tetrode, cluster)

        possibleClusters = np.unique(spikeData.clusters)

        for cluster in possibleClusters:
            sessions.append(session)
            tetrodes.append(tetrode)
            behavSuffixs.append(behavSuffix)
            clusters.append(cluster)

        dataList = zip(sessions, tetrodes, behavSuffixs, clusters)
        flipper = extraplots.FlipThrough(self.plot_sorted_tuning_raster, dataList)
        return flipper
Exemplo n.º 3
0
    def flip_tetrode_tuning(self, session, behavSuffix, tetrodes=None , rasterRange=[-0.5, 1], tcRange=[0, 0.1]):

        if not tetrodes:
            tetrodes=self.defaultTetrodes

        plotTitle = sessionDir

        spikesList=[]
        eventsList=[]
        freqList=[]
        rasterRangeList=[]
        tcRangeList=[]

        bdata = self.loader.get_session_behavior(behavSuffix)
        freqEachTrial = bdata['currentFreq']
        eventData = self.loader.get_session_events(sessionDir)
        eventOnsetTimes = self.loader.get_event_onset_times(eventData)

        for tetrode in tetrodes:
            spikeData = self.loader.get_session_spikes(sessionDir, tetrode, cluster)
            spikeTimestamps = spikeData.timestamps

            spikesList.append(spikeTimestamps)
            eventsList.append(eventOnsetTimes)
            freqList.append(freqEachTrial)
            rasterRangeList.append(rasterRange)
            tcRangeList.append(tcRange)

        dataList = zip(sessions, tetrodes, behavSuffixs, clusters)
        flipper = extraplots.FlipThrough(self.plot_sorted_tuning_raster, dataList)
        return flipper
Exemplo n.º 4
0
def showClusters():
    currentCellList = []
    for behavSession,tetClusList in ClusterDict.iteritems():
        for tetClus in tetClusList:
            #print 'session: ',behavSession,', tetrode: ',tetClus[0],', cluster: ',tetClus[1]
            currentCellList.append((mouseName,behavSession,tetClus[0],tetClus[1]))
    #print currentCellList
    ft = extraplots.FlipThrough(indiv.switch_report,currentCellList)#############################################################
    return ft
fetFilename = os.path.join(clustersDir, 'Tetrode%d.fet.1' % tetrode)
fetFile = open(fetFilename, 'r')

numFetclusters = fetFile.readline()
fetList = fetFile.read().split('\n')

for indF, fet in enumerate(fetList):
    fetList[indF] = fet.split()

fetList = np.asarray(fetList[:-1])

waveFet = fetList[dataTT.clusters == cluster]

waveforms = dataTT.samples[dataTT.clusters == cluster]

waveforms_first = waveforms[ISIVioBoolFirst]
waveforms_second = waveforms[ISIVioBoolSecond]

#ax4 = plt.subplot2grid((1,2), (0,0), colspan = (numCols/2), rowspan = sizeRasters)
#raster_sound_block_switching()
#ax5 = plt.subplot2grid((numRows,numCols), (sizeRasters,0), colspan = (numCols/2), rowspan = sizeHists)
#hist_sound_block_switching()

nISIVio = len(waveforms_first)
allWaves = []
for indISI in range(nISIVio):
    allWaves.append((waveforms_first[indISI][channel_to_plot],
                     waveforms_second[indISI][channel_to_plot]))
#alldata.append((spikeTimesFromEventOnset, sortedIndexForEachSpike,meanSpikesEachFrequency,possibleFreq,responseRange,tetrodeID))
flipPlots = extraplots.FlipThrough(waveformPlot, allWaves)