如何在表格中繪製空白行?

如何在表格中繪製空白行?

我正在嘗試重新建立下表:

在此輸入影像描述

但我對前兩列有疑問。我不希望垂直線一直往上。

在此輸入影像描述

如何限制垂直線的延伸?

這是我正在使用的程式碼。

\begin{table}[H]
\def\arraystretch{1.3}
    \caption{Caption}
    \centering
    \resizebox{0.5\textwidth}{!}{
    \begin{tabular}{|c|c|c|c|c|c|c|c|}
\cline{3-8}
& & \multicolumn{6}{|c|}{Datos principales}\\
\cline{3-8}
& & \multicolumn{3}{|c|}{Datos 1} & \multicolumn{3}{|c|}{Datos 2}\\
\hline
\multirow{3}{*}{Primer grupo} & Primera prueba & 1 & 2 & 3 & 1 & 2 & 3 \\

\cline{2-8}
                              & Segunda prueba & 4 & 5 & 6 & 4 & 5 & 6\\
\cline{2-8}
                              & Tercera prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
\hline
\multirow{3}{*}{Segundo grupo} & Primera prueba & 1 & 2 & 3 & 1 & 2 & 3 \\
\cline{2-8}
                              & Segunda prueba & 4 & 5 & 6 & 4 & 5 & 6\\
\cline{2-8}
                              & Tercera prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
    \hline
    \end{tabular}
    }
    \label{tab:my_label}

\end{table}

答案1

我建議您使用幾個\multicolumn{2}{l|}{}指令來解決即時格式問題;請參閱下面的第一個表。

我還想建議你通過擺脫所有垂直規則——相信我,它們不會被錯過——並使用更少但很好的規則,給桌子一個同時更緊湊但也更開放的外觀。規則。將重複的資訊放在表頭中也是一個好主意;請參閱下面的第二個表。請注意,由於此方法一開始就沒有垂直線,因此也無需應用拼湊\multicolumn{2}{l|}{}

最後一句話:我看不出有任何理由用大槌子敲擊手邊的桌子\resizebox

在此輸入影像描述

\documentclass{article}
\usepackage[spanish,es-tabla]{babel}
\usepackage{array,multirow}
\usepackage[skip=0.333\baselineskip]{caption} % optional
\usepackage{booktabs} % for well-spaced horizontal rules

\begin{document}

\begin{table}[ht]
\centering

%\def\arraystretch{1.3}
\setlength\extrarowheight{3pt}
\caption{Caption1}
\label{tab:my_label1}

\begin{tabular}{ | *{2}{l|} *{6}{c|} }
\cline{3-8}
\multicolumn{2}{c|}{} % empty double-wide cell, with "|" on the right
  & \multicolumn{6}{c|}{Datos principales}\\
\cline{3-8}
\multicolumn{2}{c|}{} % empty double-wide cell, with "|" on the right
  & \multicolumn{3}{c|}{Datos 1} 
  & \multicolumn{3}{c|}{Datos 2}\\
\hline
\multirow{3}{*}{Primer grupo}  
     & Primera prueba & 1 & 2 & 3 & 1 & 2 & 3 \\
\cline{2-8}
     & Segunda prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
\cline{2-8}
     & Tercera prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
\hline
\multirow{3}{*}{Segundo grupo} 
     & Primera prueba & 1 & 2 & 3 & 1 & 2 & 3 \\
\cline{2-8}
     & Segunda prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
\cline{2-8}
     & Tercera prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
\hline
\end{tabular} 

\bigskip\bigskip

\setlength\extrarowheight{0pt} % not needed for 2nd table
\caption{Caption2}
\label{tab:my_label2}

\begin{tabular}{@{} *{2}{l} *{6}{c} @{}}
\toprule
Grupo & Prueba & \multicolumn{6}{c@{}}{Datos principales}\\
\cmidrule(l){3-8}
& & \multicolumn{3}{c}{Datos 1} & \multicolumn{3}{c@{}}{Datos 2} \\
\midrule
Primer 
     & Primera & 1 & 2 & 3 & 1 & 2 & 3 \\
     & Segunda & 4 & 5 & 6 & 4 & 5 & 6 \\
     & Tercera & 4 & 5 & 6 & 4 & 5 & 6 \\
\addlinespace
Segundo
     & Primera & 1 & 2 & 3 & 1 & 2 & 3 \\
     & Segunda & 4 & 5 & 6 & 4 & 5 & 6 \\
     & Tercera & 4 & 5 & 6 & 4 & 5 & 6 \\
\bottomrule
\end{tabular} 
\end{table}

\end{document}

答案2

LaTeX 中的環境tabular是基於\halignTeX 原語。每個表項都是根據表聲明中的左側材料建立的(因為您聲明了,所以第一列中有垂直線|c)。

然後列印表項數據,然後列印表格聲明中的正確材料(每列中有一條垂直線,因為您聲明了c|)。 TeX 原語可以省略左+右材料\omit。如果寫\omit在第一列則省略左右豎線,如果寫\omit在另一列則省略右側豎線。

程式碼中沒有不需要的垂直規則的部分可以由\omitTeX 原語管理,如下所示:

\omit & & \multicolumn{6}{|c|}{Datos principales}\\
\cline{3-8}
\omit & & \multicolumn{3}{|c|}{Datos 1} & \multicolumn{3}{|c|}{Datos 2}\\
\hline

答案3

該軟體包具有可用於創建此效果的nicematrix內建功能。該軟體包還具有以粗體顯示行或列的功能。注意cornershvlines你必須編譯該文檔兩次nicematrix每次進行影響單元格大小的變更時使用。

在此輸入影像描述

\documentclass{article}

\usepackage{nicematrix}

\begin{document}

\begin{table}
\centering
\begin{NiceTabular}{>{\bfseries}cccccccc}[corners, hvlines]
\RowStyle[nb-rows=2]{\bfseries}
& & \Block{1-6}{Datos principales}\\
& & \Block{1-3}{Datos 1} &&& \Block{1-3}{Datos 2}\\
\Block{3-1}{Primer\\grupo} & Primera prueba & 1 & 2 & 3 & 1 & 2 & 3 \\
 & Segunda prueba & 4 & 5 & 6 & 4 & 5 & 6\\
 & Tercera prueba & 4 & 5 & 6 & 4 & 5 & 6 \\
\Block{3-1}{Segundo\\grupo} & Primera prueba & 1 & 2 & 3 & 1 & 2 & 3 \\
 & Segunda prueba & 4 & 5 & 6 & 4 & 5 & 6\\
 & Tercera prueba & 4 & 5 & 6 & 4 & 5 & 6
\end{NiceTabular}
\caption{Caption.}
\label{table:1}
\end{table}

\end{document}

相關內容