Source code for ibllib.io.extractors.passive_plotting

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Author: Niccolò Bonacchi
# @Date: Friday, October 16th 2020, 5:53:15 pm
# PLOTTING
from ibllib.plots import color_cycle, squares, vertical_lines
from ibllib.io.extractors import ephys_fpga
import matplotlib.pyplot as plt
import numpy as np


[docs] def plot_rfmapping(times_interp_RF, ax=None): if ax is None: f, ax = plt.subplots(1, 1) vertical_lines(times_interp_RF, ymin=0, ymax=1, color=color_cycle(9), ax=ax, label='RFframe_times') ax.legend()
[docs] def plot_sync_channels(sync, sync_map, ax=None): # Plot all sync pulses if ax is None: f, ax = plt.subplots(1, 1) for i, device in enumerate(['frame2ttl', 'audio', 'bpod']): sy = ephys_fpga.get_sync_fronts(sync, sync_map[device]) # , tmin=t_start_passive) squares(sy['times'], sy['polarities'], yrange=[0.1 + i, 0.9 + i], color='k', ax=ax)
[docs] def plot_passive_periods(passivePeriods_df, ax=None): if ax is None: f, ax = plt.subplots(1, 1) # Update plot vertical_lines( np.r_[passivePeriods_df.loc['start'], passivePeriods_df.loc['stop']], ymin=-1, ymax=4, color=color_cycle(0), ax=ax, label='spacers', ) ax.legend()
[docs] def plot_gabor_times(passiveGabor_df, ax=None): if ax is None: f, ax = plt.subplots(1, 1) # Update plot vertical_lines( passiveGabor_df['start'].values, ymin=0, ymax=1, color=color_cycle(1), ax=ax, label='GaborOn_times', ) vertical_lines( passiveGabor_df['stop'].values, ymin=0, ymax=1, color=color_cycle(2), ax=ax, label='GaborOff_times', ) ax.legend()
[docs] def plot_valve_times(passiveValve_intervals, ax=None): if ax is None: f, ax = plt.subplots(1, 1) # Update the plot vertical_lines( passiveValve_intervals[:, 0], ymin=2, ymax=3, color=color_cycle(3), ax=ax, label='ValveOn_times', ) vertical_lines( passiveValve_intervals[:, 1], ymin=2, ymax=3, color=color_cycle(4), ax=ax, label='ValveOff_times', ) ax.legend()
[docs] def plot_audio_times(passiveTone_intervals, passiveNoise_intervals, ax=None): if ax is None: f, ax = plt.subplots(1, 1) # Look at it vertical_lines( passiveTone_intervals[:, 0], ymin=1, ymax=2, color=color_cycle(5), ax=ax, label='toneOn_times', ) vertical_lines( passiveTone_intervals[:, 1], ymin=1, ymax=2, color=color_cycle(6), ax=ax, label='toneOff_times', ) vertical_lines( passiveNoise_intervals[:, 0], ymin=1, ymax=2, color=color_cycle(7), ax=ax, label='noiseOn_times', ) vertical_lines( passiveNoise_intervals[:, 1], ymin=1, ymax=2, color=color_cycle(8), ax=ax, label='noiseOff_times', ) ax.legend()
[docs] def plot_stims_times(passiveStims_df, ax=None): if ax is None: f, ax = plt.subplots(1, 1) # Look at it vertical_lines( passiveStims_df['valveOn'].values, ymin=2, ymax=3, color=color_cycle(3), ax=ax, label='ValveOn_times', ) vertical_lines( passiveStims_df['valveOff'].values, ymin=2, ymax=3, color=color_cycle(4), ax=ax, label='ValveOff_times', ) ax.legend() vertical_lines( passiveStims_df['toneOn'].values, ymin=1, ymax=2, color=color_cycle(5), ax=ax, label='toneOn_times', ) vertical_lines( passiveStims_df['toneOff'].values, ymin=1, ymax=2, color=color_cycle(6), ax=ax, label='toneOff_times', ) vertical_lines( passiveStims_df['noiseOn'].values, ymin=1, ymax=2, color=color_cycle(7), ax=ax, label='noiseOn_times', ) vertical_lines( passiveStims_df['noiseOff'].values, ymin=1, ymax=2, color=color_cycle(8), ax=ax, label='noiseOff_times', ) ax.legend()
# plt.show()