Ich versuche den folgenden Code zu kompilieren:
\documentclass{article}
\usepackage{graphicx,algpseudocode,algorithm,multirow,hyperref,subfig,cancel,natbib,epstopdf,xspace}
\begin{document}
\clubpenalty=10000
\widowpenalty = 10000
\begin{table}
%\newcommand{\tabcolwidth}[1]{\parbox[c]{3cm}{\centering #1}}
\renewcommand\multirowsetup{\centering}
\caption{caption}
\subfloat
{
\resizebox{1.0\linewidth}{!}
{
\begin{tabular}{lrrrr}
\hline
\multirow{2}{*}{A} & \multicolumn{4}{c}{B} \\
& $20 \%$ & $40 \%$ & $60 \%$ & $80 \%$ \\
\hline
Alg1 & $48.21$ & $48.64$ & $51.13$ & $52.46$ \\
Alg2 & $42.72$ & $46.31$ & $48.56$ & $51.64$ \\
\hline
\end{tabular}
}
}\\
\end{table}
\end{document}
mit pdflatex.
Ich erhalte während der Kompilierung die folgenden Fehler:
Overfull \hbox (6.71255pt too wide) in paragraph at lines 28--29
[][]
Underfull \hbox (badness 10000) in paragraph at lines 28--29
Ich kann mir hier den Grund nicht erklären!
Antwort1
Das overfull \hbox
liegt an den Leerzeichen an den Zeilenenden. Solche Zeilenenden sollten Sie auskommentieren.
Das underfull \hbox
liegt daran, dass \\
es niemals verwendet werden sollte, um einen Absatz zu fälschen:
\documentclass{article}
\usepackage{graphicx,multirow,subfig,hyperref}% Load only used packages
% settings moved to preamble
\clubpenalty=10000
\widowpenalty = 10000
\begin{document}
\begin{table}
%\newcommand{\tabcolwidth}[1]{\parbox[c]{3cm}{\centering #1}}
\renewcommand\multirowsetup{\centering}
\caption{caption}
\subfloat{%
\resizebox{1.0\linewidth}{!}{%
\begin{tabular}{lrrrr}
\hline
\multirow{2}{*}{A} & \multicolumn{4}{c}{B} \\
& $20 \%$ & $40 \%$ & $60 \%$ & $80 \%$ \\
\hline
Alg1 & $48.21$ & $48.64$ & $51.13$ & $52.46$ \\
Alg2 & $42.72$ & $46.31$ & $48.56$ & $51.64$ \\
\hline
\end{tabular}%
}%
}
\end{table}