function showweights(inhid) %assume each row of data is a square image. hidcols = 10; [numin, numhid]=size(inhid); rows = ceil(numhid/hidcols); width = sqrt(numin); if ceil(width)==width else fprintf(1,'Numin must be a square\n'); end figure(1); clf; for h = 1:numhid; col = 1+ rem(h-1,hidcols); row = ceil(h/hidcols); rect = [(col-.95)/hidcols, (rows+1-row-.95)/rows, 1/(hidcols*1.1), 1/(rows*1.1)]; axes('position', rect); show(reshape(inhid(:,h)', width,width)',-1,1); end; drawnow;