0001 function printConfusionMatrix(cf)
0002
0003
0004 nTasks = size(cf,1);
0005
0006 fprintf(1,' Actual\n');
0007 fprintf(1,' ');
0008 for i=1:nTasks
0009 fprintf(1,' Task %d',i);
0010 end
0011 fprintf(1,'\n');
0012
0013 for i=1:nTasks
0014 if i==round(nTasks/2)
0015 fprintf(1,'Predicted ');
0016 else
0017 fprintf(1,' ');
0018 end
0019 fprintf(1,'Task %d',i);
0020 for j=1:nTasks
0021 fprintf(1,' %7.1f',cf(i,j));
0022 end
0023 fprintf(1,'\n');
0024 end
0025
0026 fd = fopen('cftable.tex','w');
0027
0028 fprintf(fd,'\\begin{table}\n');
0029 fprintf(fd,'\\begin{center}\n');
0030 fprintf(fd,'\\begin{tabular}{cc');
0031 for i=1:nTasks
0032 fprintf(fd,'r@{.}l');
0033 end
0034 fprintf(fd,'}\n');
0035 midtask = round(nTasks/2);
0036 printampersands(fd,2);
0037 fprintf(fd,' \\multicolumn{%d}{c}{Actual} \\\\\n',nTasks*2);
0038 printampersands(fd,1);
0039 fprintf(fd,' ');
0040 for i=1:nTasks
0041 fprintf(fd,'& \\multicolumn{2}{c}{Task %d} ',i);
0042 end
0043 fprintf(fd,'\\\\\n');
0044 for pi = 1:nTasks
0045 if pi==midtask
0046 fprintf(fd,'Predicted & ');
0047 else
0048 fprintf(fd,' & ');
0049 end
0050 fprintf(fd,'Task %d ',pi);
0051 for i=1:nTasks
0052 v = cf(pi,i);
0053 vi = floor(v);
0054 vd = round((v-vi)*10);
0055 fprintf(fd,'& ~~%d&%d ',vi,vd);
0056 end
0057 fprintf(fd,'\\\\\n');
0058 end
0059 fprintf(fd,'\\end{tabular}\n');
0060 fprintf(fd,'\\end{center}\n');
0061 fprintf(fd,'\\caption{Table caption.}\n');
0062 fprintf(fd,'\\label{tab:label}\n');
0063 fprintf(fd,'\\end{table}\n');
0064
0065 fclose(fd);
0066
0067 fprintf(1,'LaTeX table written to cftable.tex\n');
0068
0069
0070
0071 function printampersands(fd,n)
0072 for i=1:n
0073 fprintf(fd,'&');
0074 end
0075
0076