123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- % The script plots the neural and behavioural data contained in a .h5 file
- % of the repository in the form of a raster plot
- % authors: Francesco E. Vaccari
- % date: 10/2022
-
- clear all; clc; close all;
- addpath('supportFunctions')
- currentFolder = pwd;
- parentFolder = fileparts(fileparts(currentFolder));
- [filename,path_folder_data] = uigetfile('*.h5','Select a h5 dataset',[parentFolder '\data']);
- str = '/DATA'; %it can be either unitXXX, unitXXX/conditionYY or unitXXX/conditionYY/trialZZ
- [data, all_strings] = get_all_data_from_level_h5_rec([path_folder_data filename],str, {}, {}); %extract data
- markers = data(:,1); spikes = data(:,2);
- str2readmk = ['/DATA/unit_001/condition_01/trial_01/event_markers'];
- marker_labels = h5readatt([path_folder_data filename],str2readmk,'Marker labels'); %extract names of event markers
- figure
- hold on
- for count = 1:length(spikes)
- clmap = jet(length(markers{count}));
- scatter(spikes{count},count,'|','k')
- sz = 30;
- c = linspace(1,10,length(markers{count}));
- if count == length(spikes)
- for mk = 1:size(markers{count},2)
- tmp = scatter(markers{count}(mk),1*count,sz,clmap(mk,:),'filled','DisplayName',marker_labels{mk});
- dots(mk) = tmp;
- end
- end
- scatter(markers{count},ones(size(markers{count}))*count,sz,clmap,'filled')
- end
- hold off
- ylim([0 count+1])
- xlabel('Time (ms)')
- ylabel('Trial #')
- legend(dots,marker_labels)
- colormap(jet)
- title('Raster Plot')
|