将单元格水平和垂直居中

将单元格水平和垂直居中

我想要将一个单元格置于表格的中心。

这是我在 Latex 中的代码:

   \begin{table}[ht]
        \centering
        \caption{Parâmetros do \textit{dataset metadata.json}}
        \label{tab:hla:metadata}
        \resizebox{\textwidth}{!}{%
        \begin{tabular}{l l l l}
        \toprule
        \multicolumn{2}{c}{\thead[b]{Nome da variável}} & \multicolumn{1}{c}{\thead[b]{Descrição}} & \multicolumn{1}{c}{\thead[b]{Tipo de Medida}} \\ 
        \midrule
        \multicolumn{2}{l}{concession\_name} & Indica o nome da Concessão responsável pela Autoestrada & Cadeia de caracteres \\ 
        \multicolumn{2}{l}{road\_name} & Indica o nome da estrada & Cadeia de caracteres \\ 
        \multicolumn{2}{l}{road\_type} & Indica a categoria de estrada: Autoestrada, Via-rápida, Urbana ou Rural  & Cadeia de caracteres \\ 
        \multicolumn{2}{l}{sensor\_type} &  Indica o tipo de sensor: Contador ou Pórtico & Cadeia de caracteres \\
        \multicolumn{2}{l}{km\_point} &  Indica o quilometro & Numérico \\
        \multicolumn{2}{l}{sensor\_id\_holder} &  Variável que identifica o Sensor & Cadeia de caracteres \\
        \multicolumn{2}{l}{section} & Indica o troço  & Cadeia de caracteres \\
        \multicolumn{2}{l}{state} &  Identifica o estado do Sensor: Ativo ou Inativo & Cadeia de caracteres \\
        \multicolumn{2}{l}{concession\_holder} &  Indica o nome da Concessão responsável pela manutenção & Cadeia de caracteres \\
        \multicolumn{2}{l}{bearing} & Indica  o Sentido  & Cadeia de caracteres \\
        \multicolumn{2}{l}{country} &  Variável que identifica o tipo & Cadeia de caracteres \\
        \multirow{}{}{location} & Longitude &   Variável que identifica o tipo & Numérico \\
         & Latitude &  Variável que identifica o tipo & Numérico \\
        \bottomrule
        \end{tabular}%
        }
    \end{table}

答案1

marmot 评论。不过我会将你的表格设置如下:

  • 消除\resizebox{\textwidth}{!}{...}
  • 用于tabularx表格环境。通过使用列,X第三列中的长文本被分成更多行
  • 对于更短的代码,定义新的命令\mcl(参见下面的 mwe)

\documentclass{article}
\usepackage{booktabs, makecell, multirow, tabularx}
\newcommand\mcl[1]{\multicolumn{2}{@{}l}{#1}}

\begin{document}
\begin{table}[ht]
\centering
\caption{Parâmetros do \textit{dataset metadata.json}}
\label{tab:hla:metadata}
\begin{tabularx}{\linewidth}{@{} l l X l @{}}
\toprule
\multicolumn{2}{c}{\thead[b]{Nome da variável}} 
                & \thead[b]{Descrição} 
                    & \thead[b]{Tipo de Medida} \\
\midrule
\mcl{concession\_name} 
                & Indica o nome da Concessão responsável pela Autoestrada
                    & Cadeia de caracteres      \\
\mcl{road\_name} 
                & Indica o nome da estrada
                    & Cadeia de caracteres      \\
\mcl{road\_type}    
                & Indica a categoria de estrada: Autoestrada, Via-rápida, Urbana ou Rural
                    & Cadeia de caracteres      \\
\mcl{sensor\_type}
                &  Indica o tipo de sensor: Contador ou Pórtico
                    & Cadeia de caracteres      \\
\mcl{km\_point} &  Indica o quilometro
                    & Numérico                  \\
\mcl{sensor\_id\_holder} 
                &  Variável que identifica o Sensor
                    & Cadeia de caracteres      \\
\mcl{section}   & Indica o troço
                    & Cadeia de caracteres      \\
\mcl{state}     &  Identifica o estado do Sensor: Ativo ou Inativo
                    & Cadeia de caracteres      \\
\mcl{concession\_holder} 
                &  Indica o nome da Concessão responsável pela manutenção
                    & Cadeia de caracteres      \\
\mcl{bearing}   & Indica  o Sentido  
                    & Cadeia de caracteres      \\
\mcl{country}   &  Variável que identifica o tipo 
                    & Cadeia de caracteres      \\
\multirow{2}{*}{location}   
    & Longitude & Variável que identifica o tipo 
                    & Numérico                  \\
    & Latitude  & Variável que identifica o tipo 
                    & Numérico                  \\
\bottomrule
\end{tabularx}
\end{table}
\end{document}

在此处输入图片描述

(红线表示文字边框)

答案2

使用\makecelltabularx  。切勿用于\resizebox表格:字体大小不一致,并且经常导致表格难以阅读。此外,我在行周围添加了一些填充:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc} 
\usepackage[showframe]{geometry} 
\usepackage{multirow, caption, makecell, tabularx, booktabs}
\usepackage{amsmath}
\usepackage{array}

\begin{document}

\begin{table}[ht]
    \centering\setcellgapes{2pt}\makegapedcells
    \renewcommand{\theadfont}{\normalsize}
    \caption{Parâmetros do \textit{dataset metadata.json}}
    \label{tab:hla:metadata}
    \begin{tabularx}{\linewidth}{l l X l}
    \toprule
    \multicolumn{2}{c}{\thead[b]{Nome da variável}} & \multicolumn{1}{c}{\thead[b]{Descrição}} & \multicolumn{1}{c}{\thead[b]{Tipo de Medida}} \\
    \midrule
    \multicolumn{2}{l}{concession\_name} & Indica o nome da Concessão responsável pela Autoestrada & Cadeia de caracteres \\
    \multicolumn{2}{l}{road\_name} & Indica o nome da estrada & Cadeia de caracteres \\
    \multicolumn{2}{l}{road\_type} & Indica a categoria de estrada: Autoestrada, Via-rápida, Urbana ou Rural & Cadeia de caracteres \\
    \multicolumn{2}{l}{sensor\_type} & Indica o tipo de sensor: Contador ou Pórtico & Cadeia de caracteres \\
    \multicolumn{2}{l}{km\_point} & Indica o quilometro & Numérico \\
    \multicolumn{2}{l}{sensor\_id\_holder} & Variável que identifica o Sensor & Cadeia de caracteres \\
    \multicolumn{2}{l}{section} & Indica o troço & Cadeia de caracteres \\
    \multicolumn{2}{l}{state} & Identifica o estado do Sensor: Ativo ou Inativo & Cadeia de caracteres \\
    \multicolumn{2}{l}{concession\_holder} & Indica o nome da Concessão responsável pela manutenção & Cadeia de caracteres \\
    \multicolumn{2}{l}{bearing} & Indica o Sentido & Cadeia de caracteres \\
    \multicolumn{2}{l}{country} & Variável que identifica o tipo & Cadeia de caracteres \\
    {location} & \makecell[l]{Longitude\\ Latitude} & \makecell[l]{Variável que identifica o tipo\\ Variável que identifica o tipo} & 
    \makecell[l]{Numérico\\Numérico} \\
    \bottomrule
    \end{tabularx}%
\end{table}

\end{document}

在此处输入图片描述

相关内容