Cómo espaciar los títulos de las filas y colocar los títulos de las subtablas

Cómo espaciar los títulos de las filas y colocar los títulos de las subtablas

He estado intentando construir una matriz de confusión de 3x3 usando pdfLatex. Mi resultado hasta ahora está incluido en la imagen a continuación junto con mi código.

Tengo problemas con dos aspectos de las matrices.

En primer lugar, necesito aumentar el espacio entre "Valor real" y los encabezados de las filas "Izquierda", "Derecha" y "Recta" a lo largo de los lados de las matrices; sin embargo, hasta ahora no he podido hacerlo bien.

En segundo lugar, necesito desplazar el subtítulo "(b) Parte 2", en la parte inferior de la segunda matriz, hacia la izquierda para que se alinee con la fila central de la matriz como el subtítulo "(a) Parte 1 " lo hace para la primera matriz.

¿Cómo podría hacer las dos correcciones anteriores?

Intenté ordenar el código tanto como fuera posible. Soy bastante nuevo y es posible que no esté utilizando los mejores métodos posibles. Cualquier consejo adicional con respecto a las mejoras será muy apreciado.

Gracias.

\begin{table}[h!]
    \begin{center}
    \setlength\tabcolsep{0pt}
    \caption{Confusion Matrix}
    \label{tab:table1}
    \begin{subtable}{0.49\linewidth}
        \begin{tabular}{c|c|c|c|c}
            \multicolumn{1}{c}{} & \multicolumn{1}{c}{} & \multicolumn{3}{c}{\bfseries Prediction outcome} \\
            \multicolumn{1}{c}{} & \multicolumn{1}{c}{} & \multicolumn{1}{c}{\textbf{Left}} & \multicolumn{1}{c}{\textbf{Straight}} & \multicolumn{1}{c}{\textbf{Right}}\\
            \multicolumn{1}{c}{\multirow{13}{*}{\rotatebox{90}{\parbox{1.1cm}{\bfseries \mbox{Actual Value}}}}} & \multicolumn{1}{c}{\multirow{-2}{*}{\rotatebox{90}{\parbox{1.1cm}{\textbf{Left}}}}} & \multicolumn{1}{c}{\MyBox{0}{ }} & \multicolumn{1}{c}{\MyBox{1}{ }} & \multicolumn{1}{c}{\MyBox{2}{ }}\\
            \multicolumn{1}{c}{} & \multicolumn{1}{c}{\multirow{1}{*}{\rotatebox{90}{\parbox{1cm}{\textbf{Straight}}}}} & \multicolumn{1}{c}{\MyBox{0}{ }} & \multicolumn{1}{c}{\MyBox{1}{ }} & \multicolumn{1}{c}{\MyBox{2}{ }}\\
            \multicolumn{1}{c}{} & \multicolumn{1}{c}{\multirow{-2}{*}{\rotatebox{90}{\parbox{1.1cm}{\textbf{Right}}}}} & \multicolumn{1}{c}{\MyBox{0}{ }} & \multicolumn{1}{c}{\MyBox{1}{ }} & \multicolumn{1}{c}{\MyBox{2}{ }}
        \end{tabular}
        \caption{Part 1}
    \end{subtable}
    \begin{subtable}{0.49\linewidth}
         \begin{tabular}{c|c|c|c|c}
             \multicolumn{3}{c}{\bfseries Prediction outcome} & \multicolumn{1}{c}{} \\
             \multicolumn{1}{c}{\textbf{Left}} & \multicolumn{1}{c}{\textbf{Straight}} & \multicolumn{1}{c}{\textbf{Right}} & \multicolumn{1}{c}{}\\
             \multicolumn{1}{c}{\MyBox{1000}{ }} & \multicolumn{1}{c}{\MyBox{1}{ }} & \multicolumn{1}{c}{\MyBox{2}{ }} & \multicolumn{1}{c}{\multirow{3}{*}{\rotatebox{270}{\parbox{1cm}{\textbf{Left}}}}} & \multicolumn{1}{c}{\multirow{9}{*}{\rotatebox{270}{\parbox{1.2cm}{\bfseries \mbox{Actual Value}}}}}\\
             \multicolumn{1}{c}{\MyBox{0}{ }} & \multicolumn{1}{c}{\MyBox{1}{ }} & \multicolumn{1}{c}{\MyBox{2}{ }} & \multicolumn{1}{c}{\multirow{-2}{*}{\rotatebox{270}{\parbox{-10cm}{\textbf{Straight}}}}} & \multicolumn{1}{c}{}\\
            \multicolumn{1}{c}{\MyBox{0}{ }} & \multicolumn{1}{c}{\MyBox{1}{ }} & \multicolumn{1}{c}{\MyBox{2}{ }} & \multicolumn{1}{c}{\multirow{1}{*}{\rotatebox{270}{\parbox{1.1cm}{\textbf{Right}}}}}  & \multicolumn{1}{c}{}
         \end{tabular}
         \caption{Part 2}
     \end{subtable}
     \end{center}
\end{table}

Mi matriz de confusión

Respuesta1

Aquí hay un código más simple para una de las subtablas. Con suerte, debería corresponder a lo que desea:

\documentclass{article}
\usepackage{subcaption}
\usepackage{rotating, multirow}
\usepackage{graphicx}
\newcommand{\MyBox}[1]{{\parbox[c][1.4cm][c]{1.1cm}{#1}}}
\newcommand{\rotbox}[1]{ \rotatebox[origin = c]{90}{\makebox[0pt]{\bfseries#1}}}

\begin{document}

\begin{table}[h!]
\centering
\caption{Confusion Matrix}
\label{tab:table1}
\begin{subtable}{0.49\linewidth}
    \begin{tabular}{c@{\enspace }c|c|c|c|}
        \multicolumn{2}{c}{} & \multicolumn{3}{c}{\bfseries Prediction outcome} \\
        \multicolumn{2}{c}{} & \multicolumn{1}{c}{\textbf{Left}} & \multicolumn{1}{c}{\makebox[0pt]{\textbf{Straight}}} & \multicolumn{1}{c}{\textbf{Right}}\\[0.5ex]
\cline{3-5}
    & \rotbox{Left} & \MyBox{0} & \MyBox{1} & \MyBox{2} \\
\cline{3-5}
 \rotbox{Actual value} & \rotbox{Straight} & \MyBox{0} & \MyBox{1} & \MyBox{2} \\
\cline{3-5}
    & \rotbox{Right} & \MyBox{0} & \MyBox{1} & \MyBox{2} \\
\cline{3-5}
    \end{tabular}
    \caption{Part 1}
\end{subtable}
\end{table}

\end{document} 

ingrese la descripción de la imagen aquí

información relacionada