Linhas verticais apenas em determinadas colunas

Linhas verticais apenas em determinadas colunas

Para uma tabela em minha tese, quero mostrar uma linha vertical abrangendo apenas 3 de 5 colunas.

Minha tabela atual é:

\begin{table}[h]
\centering
\captionsetup{singlelinecheck=false}
\caption[Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen]{\textbf{Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen}}
\label{t:praeppcrcycler}
\centering
\begin{tabular}{lll}
\midrule
Temperatur & Zeit & \\
\midrule
98 \si{\degreeCelsius} & 3 min &  \\
& & \\

98 \si{\degreeCelsius} & 30 s &    \\
58 \si{\degreeCelsius} & 20-30 s & 30-35x \\
72 \si{\degreeCelsius} & 20-60 s &  \\

& & \\
72 \si{\degreeCelsius} & 3 min & \\
4 \si{\degreeCelsius} & $\infty$ & \\
\end{tabular}
\end{table}

o que me dá esta tabela insira a descrição da imagem aqui

No entanto, quero adicionar uma linha vertical abrangendo a coluna 3, linhas 3 a 5, como nesta imagem insira a descrição da imagem aqui

Qualquer ajuda é apreciada!

Responder1

Aqui está. Simplifiquei e melhorei um pouco seu código:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{booktabs, caption, multirow, siunitx}

\begin{document}

\begin{table}[!htb]
  \captionsetup{singlelinecheck=false, justification=RaggedRight}
  \sisetup{range-phrase=--, range-units=single}
  \caption[Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen]{\textbf{Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen}}
  \label{t:praeppcrcycler}
  \centering
  \begin{tabular}{lll}
    \midrule
    Temperatur & Zeit & \\
    \midrule
    \SI {98}{\celsius} & \phantom{0}\SI{3}{min} & \\
                                     & & \\
    \SI{98}{\celsius} & \SI{30}{s} & \multicolumn{1}{|c}{} \\
    \SI{58}{\celsius} & \SIrange{20}{30}{s} & \multicolumn{1}|c}{30–35$\times$} \\
    \SI{72}{\celsius} & \SIrange{20}{60}{s} & \multicolumn{1}{|c}{} \\
                                     & & \\
    \SI{72}{\celsius}& \phantom{0}\SI{3}{min} & \\
    \phantom{0}\SI{4}{\celsius} & \phantom{0}$\infty$ & \\
    \midrule
  \end{tabular}
\end{table}

\end{document} 

insira a descrição da imagem aqui

Responder2

O seguinte pode ser o que você está procurando.

insira a descrição da imagem aqui

\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel,booktabs,siunitx}
\usepackage[skip=0.333\baselineskip,textfont=bf,
            singlelinecheck=false]{caption}
\begin{document}

\begin{table}[h]
\centering
\caption{Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen}
\label{t:praeppcrcycler}
\centering
\begin{tabular}{@{}lll@{}}
\midrule
Temperatur & Zeit & \\
\midrule
\SI{98}{\degreeCelsius} & 3\,min &  \\[2ex]
\SI{98}{\degreeCelsius} & 30\,s  &  
  \smash{\begin{tabular}[t]{|l@{}} 
            \\ 30--35$\times$ \\ \\
         \end{tabular}} \\
\SI{58}{\degreeCelsius} & 20--30\,s & \\
\SI{72}{\degreeCelsius} & 20--60\,s & \\[2ex]
\SI{72}{\degreeCelsius} & 3\,min    & \\
\SI{4}{\degreeCelsius}  & $\infty$  & \\
\bottomrule
\end{tabular}
\end{table}

\end{document}

Responder3

Aqui está uma solução com {NiceTabular}of nicematrix. Esse ambiente é semelhante ao ambiente clássico {tabular}(de array), mas cria nós PGF/Tikz sob as linhas, colunas e células. Portanto, é possível usar o Tikz para desenhar qualquer regra que você quiser após o array principal, colocando uma instrução no \CodeAfter( \tikz \draw (4-|3) -- (7-|3) ;).

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{ragged2e}
\usepackage{booktabs, caption, siunitx}
\usepackage{nicematrix}
\usepackage{tikz}


\begin{document}

\begin{table}[!htb]
  \captionsetup{singlelinecheck=false, justification=RaggedRight}
  \sisetup{range-phrase=--, range-units=single}
  \caption[Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen]{\textbf{Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen}}
  \label{t:praeppcrcycler}
  \centering
  \begin{NiceTabular}{lll}
    \midrule
    Temperatur & Zeit & \\
    \midrule
    \qty{98}{\celsius} & \phantom{0}\qty{3}{min} \\
                                     & & \\
    \qty{98}{\celsius} & \qty{30}{s} \\
    \qty{58}{\celsius} & \qtyrange{20}{30}{s} & 30–35$\times$ \\
    \qty{72}{\celsius} & \qtyrange{20}{60}{s} \\
                                     & & \\
    \qty{72}{\celsius}& \phantom{0}\qty{3}{min} \\
    \phantom{0}\qty{4}{\celsius} & \phantom{0}$\infty$ \\
    \midrule
  \CodeAfter \tikz \draw (4-|3) -- (7-|3) ;
  \end{NiceTabular}
\end{table}

\end{document} 

Saída do código acima

Também é possível usar o comando \Block(integrado {NiceTabular}) e sua chave borders.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{ragged2e}
\usepackage{booktabs, caption, siunitx}
\usepackage{nicematrix}
\usepackage{tikz}


\begin{document}

\begin{table}[!htb]
  \captionsetup{singlelinecheck=false, justification=RaggedRight}
  \sisetup{range-phrase=--, range-units=single}
  \caption[Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen]{\textbf{Temperatur-Zyklus-Konditionen für präperative PCR-Reaktionen}}
  \label{t:praeppcrcycler}
  \centering
  \begin{NiceTabular}{lll}
    \midrule
    Temperatur & Zeit & \\
    \midrule
    \qty{98}{\celsius} & \phantom{0}\qty{3}{min} \\
                                     & & \\
    \qty{98}{\celsius} & \Block[borders=right]{3-1}{} \qty{30}{s} \\
    \qty{58}{\celsius} & \qtyrange{20}{30}{s} & 30–35$\times$ \\
    \qty{72}{\celsius} & \qtyrange{20}{60}{s} \\
                                     & & \\
    \qty{72}{\celsius}& \phantom{0}\qty{3}{min} \\
    \phantom{0}\qty{4}{\celsius} & \phantom{0}$\infty$ \\
    \midrule
  \end{NiceTabular}
\end{table}

\end{document} 

A saída é a mesma.

informação relacionada