Usando floatrow ou \FBWidth para evitar que as legendas sejam agrupadas

Usando floatrow ou \FBWidth para evitar que as legendas sejam agrupadas

Eu tenho duas tabelas lado a lado assim:

    \documentclass[11pt,reqno]{amsart}

    \usepackage[utf8]{inputenc}
\usepackage{lipsum}
\usepackage{amssymb}
\usepackage{color}
\usepackage{enumerate}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{slashbox}
\usepackage{epstopdf}
\usepackage{floatrow}
\usepackage{newfloat}
\usepackage{blindtext}


    \newfloatcommand{capbtabbox}{table}[][\FBwidth]
    \DeclareFloatSeparators{mysep}{\hskip6em} 

    \begin{document}

         \begin{table}[!ht]\centering
        \fontsize{8}{8}\selectfont
        \floatsetup{floatrowsep=mysep}
            \begin{floatrow}
            \ttabbox[\FBwidth]
            {\begin{tabular}{|c|c|c|c|}
        \hline
        $a$&$b$&$c$&$d$\\
        \hline
        1&0&1&1\\
        \hline
        1&1&1&0\\
        \hline
        1&0&0&0\\
        \hline
        1&0&0&0\\
        \hline
        0&0&0&0\\
        \hline
        1&5&32&6\\
        \hline
        \end{tabular}}%
            {\caption{Very long caption that goes something like this.}\label{label}}
        %%
            \ttabbox[\FBwidth]
            {\begin{tabular}{|c|c|c|c|}
        \hline
        $a$&$b$&$c$&$d$\\
        \hline
        1&0&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
            \end{tabular}}
            {\caption{Another long caption like this}
            \label{label2}}
            \end{floatrow}
            \end{table}%
    \end{document}

Quando exibidas, no entanto, as legendas são contornadas em vez de serem exibidas em uma linha. Existe uma maneira de usar \FBWidth ou algo mais no floatrow para ampliar as legendas?

Responder1

Você pode querer algo assim, que rotula cada subtabela e depois adiciona uma explicação rotulada na legenda da tabela principal. Claramente, as legendas devem estar fora das tabelas se quiserem ser mais largas do que essas tabelas. Além disso, eles precisarão de rótulos para indicar qual legenda corresponde a qual tabela. Conseqüentemente, o design tabela-subtabela / legenda-sublegenda.

subtabelas com sublegendas

Você também deve ler parte da documentação sobre design de tabelas. Geralmente, é recomendado ter menos linhas e melhor espaçamento. Na verdade, a maioria das tabelas não precisa de nenhuma linha vertical. Dê uma olhada booktabspara se inspirar.

\documentclass[11pt,reqno]{amsart}

\usepackage[utf8]{inputenc}
\usepackage{amssymb}
\usepackage{color}
\usepackage{subcaption}
\DeclareCaptionLabelSeparator{none}{}
\DeclareCaptionSubType*[arabic]{table}
\captionsetup[subtable]{labelformat=simple,labelsep=none}
\captionsetup[table]{labelformat=simple,labelsep=none,justification=centerfirst}

\begin{document}

  \begin{table}[!ht]
    \centering
    \fontsize{8}{8}\selectfont
    \begin{subtable}{.25\textwidth}
      \centering
      \begin{tabular}{|c|c|c|c|}
        \hline
        $a$&$b$&$c$&$d$\\
        \hline
        1&0&1&1\\
        \hline
        1&1&1&0\\
        \hline
        1&0&0&0\\
        \hline
        1&0&0&0\\
        \hline
        0&0&0&0\\
        \hline
        1&5&32&6\\
        \hline
      \end{tabular}
      \caption{}\label{label}
    \end{subtable}
    \begin{subtable}{.25\textwidth}
      \centering
      \begin{tabular}{|c|c|c|c|}
        \hline
        $a$&$b$&$c$&$d$\\
        \hline
        1&0&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
        1&1&1&1\\
        \hline
      \end{tabular}
      \caption{}\label{label2}
    \end{subtable}
    \caption{\mbox{}\\\ref{label} Very long caption that goes something like this.\\\ref{label2} Another long caption like this.}
  \end{table}
\end{document}

Responder2

Você pode brincar com a largura do \floatbox(argumento opcional de \ttabbox) e o valor do separador flutuante. Isso exigirá ajuste manual. Você também deve estar ciente do risco de sobreposição de legendas em tabelas contíguas.

Aqui está um caminho a percorrer. Para as legendas que você dá, tive que alterar as margens horizontais do documento:

\documentclass[11pt,reqno]{amsart}

\usepackage[utf8]{inputenc}
\usepackage{floatrow}
\usepackage[hmargin =20mm, showframe, nomarginpar]{geometry}

\DeclareFloatSeparators{mysep}{\hskip-3em}

\begin{document}

\noindent \begin{table}[!ht]%\centering
\fontsize{8}{8}\selectfont
\floatsetup{floatrowsep=mysep}
\hskip-4em\begin{floatrow}
\ttabbox[5.2\FBwidth]
{\begin{tabular}{|c|c|c|c|}
  \hline
  $a$&$b$&$c$&$d$\\
  \hline
  1&0&1&1\\
  \hline
  1&1&1&0\\
  \hline
  1&0&0&0\\
  \hline
  1&0&0&0\\
  \hline
  0&0&0&0\\
  \hline
  1&5&32&6\\
  \hline
  \end{tabular}}%
{\caption{Very long caption that goes something like this.}\label{label}}
%%
\ttabbox[4\FBwidth]
{\begin{tabular}{|c|c|c|c|}
  \hline
  $a$&$b$&$c$&$d$\\
  \hline
  1&0&1&1\\
  \hline
  1&1&1&1\\
  \hline
  1&1&1&1\\
  \hline
  1&1&1&1\\
  \hline
  1&1&1&1\\
  \hline
  1&1&1&1\\
  \hline
  \end{tabular}}
{\caption{Another long caption like this} \label{label2}}
\end{floatrow}
\end{table}%

\end{document} 

insira a descrição da imagem aqui

informação relacionada