亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? topoplot.m

?? 畫出腦電地形圖的函數。用不同顏色表示大腦皮層不同區域的腦電情況
?? M
字號:
function handle = topoplot(Vl,loc_file,p1,v1,p2,v2,p3,v3,p4,v4,p5,v5,p6,v6,p7,v7,p8,v8,p9,v9)
% TOPOPLOT   - plot a topographic map of an EEG field as a 2-D
%              circular view (looking down at the top of the head) 
%              using cointerpolation on a fine cartesian grid.
% Usage:
%        >>  topoplot(datavector,'eloc_file');
%        >>  topoplot(datavector,'eloc_file', 'Param1','Value1', ...)
% Inputs:
%   'eloc_file' = name of an EEG electrode position file {0 -> 'chan_file'}
%    datavector = vector of values at the corresponding locations.
%
% Optional Parameters & Values (in any order):
%         Param                         Value
%         'colormap'         - any sized colormap
%         'interplimits'     - 'electrodes' to furthest electrode
%                              'head' to edge of head
%                                        {default 'head'}
%         'gridscale'        - scaling grid size {default 67}
%         'maplimits'        - 'absmax' +/- the absolute-max 
%                              'maxmin' scale to data range
%                              [clim1,clim2] user-definined lo/hi
%                                        {default = 'absmax'}
%         'style'            - 'straight' colormap only
%                              'contour' contour lines only
%                              'both' both colormap and contour lines
%                              'fill' constant color between lines
%                              'blank' just head and electrodes
%                                        {default = 'both'}
%         'numcontour'       - number of contour lines
%                                        {default = 6}
%         'electrodes'       - 'on','off','labels','numbers'
%         'shading'          - 'flat','interp'  {default = 'flat'}
%         'headcolor','electcolor' -  line color of head and electrodes
%         'efsize'           - electrode font size
%         'emsize'           - electrode marker size
%         'emarker'          - type of marker for electrodes 
%                                         {default = '.'}
%  
%
% Note: topoplot() only works when map limits are >= the max and min 
%                                     interpolated data values.
% Eloc_file format:
%         chan_number degrees radius reject_level amp_gain channel_name
%        (Angle-0 = Cz-to-Fz; C3-angle =-90; Radius at edge of image = 0.5)
%
% Note: topoplot() will ignore any electrode with a position outside 
%       the head (radius > 0.5)
%
%       For a sample eloc file:     >> topoplot('example')

% Topoplot Version 2.1

% Original version by Andy Spydell, NHRC,  7-23-96
% 8-96 Revised by Colin Humphries, CNL / Salk Institute, La Jolla CA
%   -changed surf command to imagesc (faster)
%   -can now handle arbitrary scaling of electrode distances
%   -can now handle non integer angles in eloc_file
% 4-4-97 Revised again by Colin Humphries, reformat by SM
%   -added parameters
%   -changed eloc_file format
% 2-26-98 Revised by Colin
%   -changed image back to surface command
%   -added fill and blank styles
%   -removed extra background colormap entry
%   -added parameters for electrode colors and labels
%   -now each topoplot axes use the caxis command again.
%   -removed OUTPUT parameter

% User Defined Defaults:
MAXCHANS = 256;
DEFAULT_ELOC = 'chan_file';
INTERPLIMITS = 'head';  % head, electrodes
MAPLIMITS = 'absmax';   % absmax, maxmin, [values]
GRID_SCALE = 67;
CONTOURNUM = 6;
STYLE = 'both';       % both,straight,fill,contour,blank
HCOLOR = [0 0 0];
ECOLOR = [0 0 0];
CONTCOLOR = [0 0 0];
ELECTROD = 'on';      % ON OFF LABEL
EFSIZE = get(0,'DefaultAxesFontSize');
HLINEWIDTH = 2;
EMARKER = '.';
EMARKERSIZE = 6;
SHADING = 'flat';     % flat or interp


%%%%%%%%%%%%%%%%%%%%%%%
nargs = nargin;
if nargs < 2
  loc_file = DEFAULT_ELOC;
end
if nargs == 1
  if isstr(Vl)
    if any(strcmp(lower(Vl),{'example','demo'}))
      fprintf(['This is an example electrode location file.\n',...
               'A file should consist of the following parameters.\n\n',...
               'channel_number degrees radius channel_name\n',...
               ' 1                 -18    .352       Fp1.\n',...
               ' 2                  18    .352       Fp2.\n',...
               ' 3                 -39    .231       F3..\n',...
               ' 4                  39    .231       F4..\n',...
               ' 5                 -90    .181       C3..\n',...
               ' 6                  90    .181       C4..\n',...
               ' 7                 -90    .500       A1..\n',...
               ' 8                  90    .500       A2..\n',...
               ' 9                -142    .231       P3..\n',...
               '10                 142    .231       P4..\n',...
               '11                -162    .352       O1..\n',...
               '12                 162    .352       O2..\n',...
               '13                 -54    .352       F7..\n',...
               '14                  54    .352       F8..\n',...
               '15                 -90    .352       T3..\n',...
               '16                  90    .352       T4..\n',...
               '17                -126    .352       T5..\n',...
               '18                 126    .352       T6..\n',...
               '19                   0    .181       Fz..\n',...
               '20                   0    0          Cz..\n',...
               '21                 180    .181       Pz..\n\n',...
               'The edge of the head has a radius of .5, and\n',...
               '0 degrees is towards the nasion\n\n\n'])
      return

    end
  end
end
if isempty(loc_file)
  loc_file = 0;
end
if loc_file == 0
  loc_file = DEFAULT_ELOC;
end

if nargs > 2
  if ~(round(nargs/2) == nargs/2)
    error('topoplot(): Incorrect number of inputs')
  end
  for i = 3:2:nargs
    Param = eval(['p',int2str((i-3)/2 +1)]);
    Value = eval(['v',int2str((i-3)/2 +1)]);
    if ~isstr(Param)
      error('topoplot(): Parameter must be a string')
    end
    Param = lower(Param);
    switch lower(Param)
      case 'colormap'
        if size(Value,2)~=3
          error('topoplot(): Colormap must be a n x 3 matrix')
        end
        colormap(Value)
      case {'interplimits','headlimits'}
        if ~isstr(Value)
          error('topoplot(): interplimits value must be a string')
        end
        Value = lower(Value);
        if ~strcmp(Value,'electrodes') & ~strcmp(Value,'head')
          error('topoplot(): Incorrect value for interplimits')
        end
        INTERPLIMITS = Value;
      case 'maplimits'
        MAPLIMITS = Value;
      case 'gridscale'
        GRID_SCALE = Value;
      case 'style'
	STYLE = lower(Value);
      case 'numcontour'
        CONTOURNUM = Value;
      case 'electrodes'
	ELECTROD = lower(Value);
      case 'emarker'
	EMARKER = Value;
      case {'headcolor','hcolor'}
	HCOLOR = Value;
      case {'electcolor','ecolor'}
	ECOLOR = Value;
      case {'emarkersize','emsize'}
	EMSIZE = Value;
      case {'efontsize','efsize'}
	EFSIZE = Value;
      case 'shading'
	SHADING = lower(Value);
	if ~any(strcmp(SHADING,{'flat','interp'}))
	  error('Invalid Shading Parameter')
	end
      otherwise
	error('Unknown parameter.')
    end
  end
end

[r,c] = size(Vl);
if r>1 & c>1,
  error('topoplot(): data should be a single vector\n');
end
fid = fopen(loc_file);
if fid<1,
  error('topoplot(): cannot open eloc_file (',loc_file,')')
end
A = fscanf(fid,'%d %f %f %s',[7 MAXCHANS]);
fclose(fid);

A = A';

if length(Vl) ~= size(A,1),
  error('topoplot(): data vector must be the same size as eloc_file')
end

labels = setstr(A(:,4:7));
idx = find(labels == '.');                       % some labels have dots
labels(idx) = setstr(abs(' ')*ones(size(idx)));  % replace them with spaces

Th = pi/180*A(:,2);                               % convert degrees to rads
Rd = A(:,3);
ii = find(Rd <= 0.5); % interpolate on-head channels only
Th = Th(ii);
Rd = Rd(ii);
Vl = Vl(ii);

[x,y] = pol2cart(Th,Rd);

rmax = .5;

ha = gca;
cla
hold on

if ~strcmp(STYLE,'blank')
  % find limits for interpolation
  if strcmp(INTERPLIMITS,'head')
    xmin = min(-.5,min(x)); xmax = max(0.5,max(x));
    ymin = min(-.5,min(y)); ymax = max(0.5,max(y));
  else
    xmin = max(-.5,min(x)); xmax = min(0.5,max(x));
    ymin = max(-.5,min(y)); ymax = min(0.5,max(y));
  end
  
  xi = linspace(xmin,xmax,GRID_SCALE);   % x-axis description (row vector)
  yi = linspace(ymin,ymax,GRID_SCALE);   % y-axis description (row vector)
  
  [Xi,Yi,Zi] = griddata(y,x,Vl,yi',xi,'invdist'); % Interpolate data
  
  % Take data within head
  mask = (sqrt(Xi.^2+Yi.^2) <= rmax);
  ii = find(mask == 0);
  Zi(ii) = NaN;
  
  % calculate colormap limits
  m = size(colormap,1);
  if isstr(MAPLIMITS)
    if strcmp(MAPLIMITS,'absmax')
      amin = -max(max(abs(Zi)));
      amax = max(max(abs(Zi)));
    elseif strcmp(MAPLIMITS,'maxmin')
      amin = min(min(Zi));
      amax = max(max(Zi));
    end
  else
    amin = MAPLIMITS(1);
    amax = MAPLIMITS(2);
  end
  delta = xi(2)-xi(1); % length of grid entry
  
  % Draw topoplot on head
  if strcmp(STYLE,'contour')
    contour(Xi,Yi,Zi,CONTOURNUM,'k');
  elseif strcmp(STYLE,'both')
    surface(Xi-delta/2,Yi-delta/2,zeros(size(Zi)),Zi,'EdgeColor','none',...
	'FaceColor',SHADING);
    contour(Xi,Yi,Zi,CONTOURNUM,'k');
  elseif strcmp(STYLE,'straight')
    surface(Xi-delta/2,Yi-delta/2,zeros(size(Zi)),Zi,'EdgeColor','none',...
	'FaceColor',SHADING);
  elseif strcmp(STYLE,'fill')
    contourf(Xi,Yi,Zi,CONTOURNUM,'k');
  else
    error('Invalid style')
  end
  caxis([amin amax]) % set coloraxis
end

set(ha,'Xlim',[-rmax*1.3 rmax*1.3],'Ylim',[-rmax*1.3 rmax*1.3])

% %%% Draw Head %%%%
l = 0:2*pi/100:2*pi;
basex = .18*rmax;  
tip = rmax*1.15; base = rmax-.004;
EarX = [.497 .510 .518 .5299 .5419 .54 .547 .532 .510 .489];
EarY = [.0555 .0775 .0783 .0746 .0555 -.0055 -.0932 -.1313 -.1384 -.1199];

% Plot Electrodes
if strcmp(ELECTROD,'on') 
  hp2 = plot(y,x,EMARKER,'Color',ECOLOR,'markersize',EMARKERSIZE);
elseif strcmp(ELECTROD,'labels')
  for i = 1:size(labels,1)
    text(y(i),x(i),labels(i,:),'HorizontalAlignment','center',...
	'VerticalAlignment','middle','Color',ECOLOR,...
	'FontSize',EFSIZE)
  end
elseif strcmp(ELECTROD,'numbers')
  for i = 1:size(labels,1)
    text(y(i),x(i),int2str(i),'HorizontalAlignment','center',...
	'VerticalAlignment','middle','Color',ECOLOR,...
	'FontSize',EFSIZE)
  end
end

% Plot Head, Ears, Nose
plot(cos(l).*rmax,sin(l).*rmax,...
    'color',HCOLOR,'Linestyle','-','LineWidth',HLINEWIDTH,...
    'clipping','off');
plot([.18*rmax;0;-.18*rmax],[base;tip;base],...
    'Color',HCOLOR,'LineWidth',HLINEWIDTH,...
    'clipping','off');
   
plot(EarX,EarY,'color',HCOLOR,'LineWidth',HLINEWIDTH)
plot(-EarX,EarY,'color',HCOLOR,'LineWidth',HLINEWIDTH)   

hold off
axis off


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区精品在线| 色综合一区二区| 99精品久久免费看蜜臀剧情介绍| 91黄视频在线观看| 久久久亚洲精品一区二区三区| 一区二区三区免费| 成人伦理片在线| 久久亚洲二区三区| 日日骚欧美日韩| 欧美色综合久久| 国产精品视频一区二区三区不卡| 免费成人在线观看视频| 在线观看区一区二| 亚洲男人天堂av网| 成人精品鲁一区一区二区| 欧美一区二区黄色| 午夜av一区二区三区| 99re这里只有精品首页| 久久精品夜色噜噜亚洲a∨| 免费成人av资源网| 91超碰这里只有精品国产| 久久亚洲一区二区三区明星换脸| 一区二区三区国产| 色老汉av一区二区三区| 中文字幕欧美一区| 菠萝蜜视频在线观看一区| 久久久久久久久久久久久夜| 日本免费在线视频不卡一不卡二| 91.麻豆视频| 日韩影院在线观看| 欧美电影一区二区| 秋霞电影网一区二区| 69堂成人精品免费视频| 日韩精品国产欧美| 欧美一级久久久久久久大片| 麻豆精品视频在线| 欧美精品一区二区三区在线播放| 久久av老司机精品网站导航| 欧美一级在线免费| 久草中文综合在线| 国产日韩欧美精品综合| 国产91高潮流白浆在线麻豆| 日本一二三不卡| 色综合色综合色综合色综合色综合| 欧美高清在线一区二区| 色综合久久88色综合天天6| 一区二区三区在线观看国产| 欧洲色大大久久| 五月综合激情网| 久久亚洲精华国产精华液| 成人高清视频免费观看| 国产精品萝li| 91久久一区二区| 日韩电影在线看| 国产婷婷色一区二区三区在线| 成人黄色小视频| 五月综合激情网| 久久精品这里都是精品| 色视频成人在线观看免| 日本大胆欧美人术艺术动态| 欧美国产成人在线| 精品婷婷伊人一区三区三| 九九久久精品视频| 国产精品美女久久久久久久| 欧美喷潮久久久xxxxx| 国产毛片一区二区| 亚洲日韩欧美一区二区在线| 91精品国产色综合久久不卡蜜臀| 国内成人精品2018免费看| 国产精品另类一区| 日韩一区二区视频| 一本一道久久a久久精品 | 日本道精品一区二区三区| 婷婷综合五月天| 国产精品国产精品国产专区不蜜 | 色婷婷综合久久久中文一区二区| 丝袜美腿亚洲综合| 国产精品视频线看| 欧美电视剧在线看免费| 欧洲一区二区三区在线| 国产91在线|亚洲| 日本不卡的三区四区五区| 自拍偷拍亚洲欧美日韩| 久久久久久久久伊人| 51精品秘密在线观看| 94-欧美-setu| 国产福利一区二区三区视频在线| 亚洲va欧美va国产va天堂影院| 日本一区二区三区高清不卡| 日韩欧美一二三区| 欧美午夜精品久久久| 波多野结衣中文字幕一区二区三区| 午夜在线成人av| 亚洲欧美自拍偷拍色图| 久久视频一区二区| 久久一区二区三区国产精品| 91精品国产综合久久久久| 91成人免费网站| 色综合视频在线观看| 91小视频在线免费看| 成人动漫精品一区二区| 国产精品一区2区| 色婷婷综合久久久久中文一区二区 | 日本不卡1234视频| 五月天丁香久久| 亚洲成人动漫一区| 亚洲一区二区综合| 亚洲另类春色国产| 一区二区三区在线高清| 亚洲免费在线视频一区 二区| 国产精品热久久久久夜色精品三区| 精品少妇一区二区三区视频免付费| 欧美美女一区二区在线观看| 欧美三级电影一区| 欧美日韩精品一区二区天天拍小说 | 欧美性一区二区| 在线观看日韩电影| 欧美日韩二区三区| 777xxx欧美| 欧美www视频| 国产视频一区在线观看| 久久精品一区四区| 中文字幕一区二区三区四区不卡| 中文字幕久久午夜不卡| 国产精品久久久久精k8| ㊣最新国产の精品bt伙计久久| 国产精品美女久久久久久| 亚洲人一二三区| 亚洲国产精品一区二区www在线| 亚洲v精品v日韩v欧美v专区| 蜜桃视频在线观看一区| 国产精品99久久久久久宅男| av日韩在线网站| 91福利国产成人精品照片| 欧美精品一二三四| 欧美精品一区二区在线播放 | 欧美乱妇15p| 91麻豆精品国产| 久久久亚洲综合| 国产精品成人在线观看| 亚洲精品高清视频在线观看| 视频一区中文字幕| 国产一区二区久久| 91麻豆福利精品推荐| 欧美日韩一区二区三区不卡| 日韩精品一区二区三区swag| 一区在线观看视频| 日韩精品一级中文字幕精品视频免费观看 | 极品美女销魂一区二区三区| 懂色中文一区二区在线播放| 欧美色大人视频| 国产三级欧美三级| 亚洲综合久久av| 国产一区二区免费看| 91麻豆国产自产在线观看| 日韩免费电影一区| 亚洲日韩欧美一区二区在线| 蜜臀av性久久久久蜜臀aⅴ| 福利视频网站一区二区三区| 欧美日韩性生活| 欧美激情中文字幕| 日本不卡1234视频| 色婷婷综合久久久久中文| 日韩三级免费观看| 亚洲欧美经典视频| 国产一二精品视频| 欧美日韩免费观看一区二区三区| 久久久欧美精品sm网站| 天天做天天摸天天爽国产一区 | 国产乱码精品一区二区三区av| 一本色道**综合亚洲精品蜜桃冫 | 一区二区欧美视频| 粉嫩绯色av一区二区在线观看| 欧美一区二区在线播放| 最好看的中文字幕久久| 国产精品888| 日韩一二在线观看| 亚洲午夜电影在线观看| av不卡免费在线观看| 久久嫩草精品久久久久| 青娱乐精品视频在线| 欧美日韩色综合| 一区二区三区在线观看网站| 成人av在线一区二区三区| 26uuu欧美| 偷拍日韩校园综合在线| 91亚洲精品久久久蜜桃网站| 国产日韩欧美综合在线| 国产乱子轮精品视频| 欧美一区二区在线视频| 日韩和欧美的一区| 欧美日韩免费观看一区二区三区| 一区二区三区四区激情| 97久久超碰精品国产| 国产日产欧美一区| 精品一区二区免费看| 精品日韩成人av| 国产精品一二三在| 久久久久青草大香线综合精品| 捆绑紧缚一区二区三区视频|