Erro ao adicionar linhas nas colunas de uma tabela

Erro ao adicionar linhas nas colunas de uma tabela

Recebi uma boa resposta para portar a tabela padrão para um diário Springer na resposta aqui Tabela de látex sem linhas de borda usando o seguinte código

\usepackage{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{siunitx}

\begin{document}
    \begin{table*}[ht]
    \caption{Result}
\sisetup{table-format=2.1,
         detect-weight, % <--
         }
\begin{tblr}{hlines, vlines,
             colspec = {X[c] X[1.2,c] X[1.8,c] X[c, si]},
             cell{even}{2} = {r=2}{},
             cell{odd[3]}{Z} = {font=\bfseries},
             row{1} = {guard}
             } 
Users Set Size (USS)
    &   Range of Users Individual
        &   Index of scalar array for mapping
            &   Transfer Failure        \\
\SetCell[r=6]{c}    6
    & 6 & 10& 23                        \\
    &   & 4 & 18.3                      \\
    & 7 & 0 & 13.3                      \\
    &   & 4 & 33.3                      \\
    & 7 & 1 & 17                        \\
    &   & 2 & 66.6                      \\
\end{tblr}
   \end{table*}
\end{document}

(imagem anexada para o látex acima), mas preciso adicionar uma linha em cada célula das colunas 3 e 4. Por exemplo, uma linha abaixo de 4 e 18,3, uma linha abaixo de 4 e 33,3 e uma linha abaixo de 2 e 66,6. então não consigo entender onde preciso modificar, mudei \SetCell[r=6]{c}, \SetCell[r=9]{c}mas obtive resultados e erros estranhos. Alguém pode dizer o que preciso modificar neste código de látexinsira a descrição da imagem aqui

Responder1

Como complemento à resposta da @Clara (+1) ...

  • No meu código, que você usa na sua pergunta, o preâmbulo da tabela tem o seguinte significado
\begin{tblr}{hlines, vlines,
     colspec = {X[c] X[1.2,c] X[1.8,c] X[c, si]}, % determine column types
     cell{even}{2} = {r=2}{}, % determine where multi row cells, which span 
                              % two successive rows start: at each even row 
                              % after second row
   cell{odd[3]}{Z} = {font=\bfseries}, % determine in which rows numbers in 
                              % the last columns are in the boldface shape
             row{1} = {guard} % protect text in the `S` columns in the first 
                              % row, that not interfere in S column formating
             }
  • Você não fornece informações sobre o que há nessas linhas adicionais e se alguns números estão em negrito.
  • Supondo que o resultado esperado seja semelhante ao seguinte

insira a descrição da imagem aqui

então você precisa fazer as seguintes alterações no código mostrado na pergunta do íon:

\begin{tblr}{hlines, vlines,
     colspec = {X[c] X[1.2,c] X[1.8,c] X[c, si]},
     cell{2,5,8}{2} = {r=3}{},           % determine multi row cells in the second column
                                         % which span three successive adjacent rows
     cell{4,7,10}{Z} = {font=\bfseries}, % determine which cells in the last column are in boldface
     row{1} = {guard}
             }
  • Para mais detalhes sobre o código utilizado, você deve ler tabularraya documentação dos pacotes ou perguntar (nos comentários) o que nas sugestões fornecidas não está claro para você.
  • Para fins de completude, o MWE completo, gerado pela tabela mostrada acima, é:
\documentclass{sn-jnl}

\usepackage{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{siunitx}

\begin{document}
    \begin{table*}[ht]
    \caption{Result}
\sisetup{table-format=2.1,
         detect-weight, % <--
         }
\begin{tblr}{hlines, vlines,
     colspec = {X[c] X[1.2,c] X[1.8,c] X[c, si]},
     cell{2,5,8}{2} = {r=3}{},           % determine multi row cells in the second column
                                         % which span three successive adjacent rows
     cell{4,7,10}{Z} = {font=\bfseries}, % determine which cells in the last column are in boldface
     row{1} = {guard}
             }
Users Set Size (USS)
    &   Range of Users Individual
        &   Index of scalar array for mapping
            &   Transfer Failure        \\
\SetCell[r=9]{c}    9    % multirow cell in the first column, spanning 9 rows
    & 6 & 10& 23                        \\
    &   & 7 & 20                        \\
    &   & 4 & 18.3                      \\
    & 7 & 0 & 13.3                      \\
    &   & 0 & 13.3                      \\
    &   & 4 & 33.3                      \\
    & 7 & 1 & 17                        \\
    &   & 3 & 11                        \\
    &   & 2 & 66.6                      \\
\end{tblr}
   \end{table*}
\end{document}

Responder2

Não tenho certeza se é isso que você está procurando. Sugiro separar completamente o estilo e o conteúdo, em vez de misturá-los.

\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{siunitx}
\begin{document}
\begin{table}
\caption{Result}
\begin{tblr}
{
colspec        = {X[c,m]X[1.2,c,m]X[1.8,c,m]X[c,m,si={table-format=2.1,detect-weight}]},
cell{2}{1}     = {r=9}{},
cell{2,5,8}{2} = {r=3}{},
cell{3,6,9}{Z} = {font=\bfseries},
row{1}         = {guard},
hlines,vlines,
}
Users Set Size (USS) & Range of Users Individual & Index of scalar array for mapping & Transfer Failure \\
6                    & 6                         & 10                                & 23               \\
                     &                           & 4                                 & 18.3             \\
                     &                           & 4                                 & 18.3             \\
                     & 7                         & 0                                 & 13.3             \\
                     &                           & 4                                 & 33.3             \\
                     &                           & 4                                 & 33.3             \\
                     & 7                         & 1                                 & 17               \\
                     &                           & 2                                 & 66.6             \\
                     &                           & 2                                 & 66.6             \\
\end{tblr}
\end{table}
\end{document}

insira a descrição da imagem aqui

informação relacionada