表格 - 较长的数字

表格 - 较长的数字

如何使最后一个单元格居中?

\multicolumn{1}{c@{}}{$M_1$} \\[0.33ex]

如何将较长的数字写入表格?多列与下方部分没有连接?谢谢

\documentclass[12pt,a4paper]{report}
\usepackage[czech]{babel}
\usepackage[margin=2.5cm]{geometry}  % choose suitable text block parameters
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern,textcomp}

\usepackage{amsmath,amssymb,bm} 
\usepackage[nottoc]{tocbibind}
\usepackage{icomma,dcolumn,booktabs} 

\newcommand{\mc}[1]{\multicolumn{1}{c}{#1}}

\usepackage{tabularx,ragged2e} % new
\newcolumntype{d}[1]{D{.}{,}{#1}}
\newcolumntype{L}{>{\RaggedRight\arraybackslash}X}
\begin{document}


\begin{table}\footnotesize
\begin{tabularx}{\textwidth}{@{} L d{3.2} d{1.2} d{2.3} d{2.3} *{4}{d{3.2}} @{}}
\toprule
Zdroj & 
\mc{$P$} & 
\mc{$T_0$}  & 
\mc{$e$} &
\mc{$\omega$} & 
\mc{$i$} & 
\mc{$a$} & 
\mc{$a$} &

\multicolumn{1}{c@{}}{$M_1$} \\[0.33ex]
  & \mc{(dny)}
  & \mc{(RJD)}
  & \mc{} 
  & \mc{($ {\rm ^\circ}$)} 
  & \mc{($ {\rm ^\circ}$)}
  & \mc{($ {\rm R_{\odot}}$)} 
  & \mc{($ {\rm M_{\odot}}$)} 
  & \mc{($ {\rm M_{\odot}}$)}   
  \\
\midrule

1 & 5,732436(15) & 54002,780(46) & 12.345 & 123.45 & 123.45 & 123.45 & 123.45 &\\

\bottomrule
\addlinespace
\multicolumn{8}{@{}l}{\footnotesize\textit{Pozn:} $^a$ Směrodatná chyba odhadu metodou Monte Carlo.}
\end{tabularx}

\caption{Maximálně věrohodné odhady v~modelu M.}\label{tab03:Nejaka}
\end{table}

\end{document}

在此处输入图片描述

编辑 当我想删除两列时我哪里犯了错误?

我有这个代码吗?

\documentclass[12pt,a4paper]{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}

\usepackage[margin=2.5cm]{geometry}  % choose suitable text block parameters
\usepackage{lmodern,textcomp}

\usepackage{amsmath,amssymb,bm} 
\usepackage[nottoc]{tocbibind}
\usepackage{booktabs,siunitx} 

\newcommand{\Mo}{\mathrm{M}_{\odot}}
\newcommand{\Ro}{\mathrm{R}_{\odot}}

\begin{document}

\begin{table}
\footnotesize

\begin{tabular*}{\textwidth}{
  @{\extracolsep{\fill}}
  l
  S[table-format=1.6(2)]
  S[table-format=5.3(2)]
  S[table-format=2.3]
  *{5}{S[table-format=3.2]}
  @{}
}
\toprule
Zdroj & 
{$P$} & 
{$T_0$}  & 
{$e$} &
{$\omega$} & 
{$i$} & 
{$a$} & 
{$a$} &
{$M_1$} \\[0.33ex]
  & {(dny)}
  & {(RJD)}
  & {} 
  & {(${}^\circ$)} 
  & {(${}^\circ$)} 
  & {($\Ro$)}
  & {($\Mo$)}
  & {($\Mo$)}   
  \\
\midrule

1 & 5,732436(15) & 54002,780(46) & 12.345 & 123.45 & 123.45 & 123.45 & 123.45 &\\

\bottomrule
\addlinespace
\multicolumn{9}{@{}l}{\textit{Pozn:} $^a$ Směrodatná chyba odhadu metodou Monte Carlo.}
\end{tabular*}

\caption{Maximálně věrohodné odhady v~modelu M.}\label{tab03:Nejaka}
\end{table}

\end{document}

我以不好的方式编辑:

\documentclass[12pt,a4paper]{report}
\usepackage[english,czech]{babel}
\usepackage[margin=2.5cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern,textcomp}
\usepackage{amsmath,amssymb,bm} 
\usepackage[nottoc]{tocbibind}
\usepackage{icomma,dcolumn,booktabs} 

\newcommand{\mc}[1]{\multicolumn{1}{c}{#1}}
\usepackage{tabularx,ragged2e} 
\newcolumntype{d}[1]{D{.}{,}{#1}}
\newcolumntype{L}{>{\RaggedRight\arraybackslash}X}
\begin{document}

\begin{table}\small
\setlength\tabcolsep{3pt} 
\begin{tabularx}{\textwidth}{@{} L cc c c *{2}{c} @{}}
\toprule
Zdroj & $P$ & $T_0$ & \mc{$e$} & \mc{$\omega$} & \mc{$i$} & \mc{$a$} & \mc{$a$} & \multicolumn{1}{c@{}}{$M_1$} \\[0.33ex]
& (dny) & (RJD) & & \mc{($^\circ$)}  &  \mc{($\mathrm{M}_{\odot}$)} & \multicolumn{1}{c@{}}{($\mathrm{M}_{\odot}$)} \\
\midrule
1 & 5,732436(15) & 54002,780(46) & 0,0910(37) & 12.345 & 123.45 & 123.45 \\

\bottomrule
\addlinespace
\multicolumn{6}{@{}l}{\footnotesize\textit{Pozn:} $^a$ Směrodatná chyba odhadu metodou Monte Carlo.}
\end{tabularx}

\caption{Maximálně věrohodné odhady v~modelu M.}\label{tab03:Nejaka}
\end{table}

\end{document}

答案1

  • $M_1$此时粒子实际上放置正确。(回想一下,由于@{}粒子的存在,表格两边的空白填充被抑制了。)这是\mc{($ {\rm M_{\odot}}$)}项目放置不正确。就像你对

    \multicolumn{1}{c@{}}{$M_1$}
    

    你必须写

    \multicolumn{1}{c@{}}{($(\mathrm{M}_{\odot}$)}
    

    以使放置位置恰到好处。

    请注意,{\rm ...}在 LaTeX 文档中, 已严重弃用。不要使用 is。相反,请写\mathrm{...}

  • d如果列中的数字需要按小数点对齐,则应使用列类型。如果不是这种情况,您甚至不应该使用列类型d。您没有提供太多有关第 2 列和第 3 列中可能出现的实际数字类型的信息。如果没有更具体的信息,我只能假设简单的居中(通过列类型c)对于这两列来说就可以了。

在此处输入图片描述

\documentclass[12pt,a4paper]{report}
\usepackage[czech]{babel}
\usepackage[margin=2.5cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern,textcomp}
\usepackage{amsmath,amssymb,bm} 
\usepackage[nottoc]{tocbibind}
\usepackage{icomma,dcolumn,booktabs} 

\newcommand{\mc}[1]{\multicolumn{1}{c}{#1}}
\usepackage{tabularx,ragged2e} 
\newcolumntype{d}[1]{D{.}{,}{#1}}
\newcolumntype{L}{>{\RaggedRight\arraybackslash}X}
\begin{document}

\begin{table}
\setlength\tabcolsep{3pt} % default: 6pt
%\footnotesize % Don't use footnotesize unless you want to make the material difficult to read
\begin{tabularx}{\textwidth}{@{} L cc d{2.3} d{2.3} *{4}{d{3.2}} @{}}
\toprule
Zdroj & $P$ & $T_0$ & \mc{$e$} &
\mc{$\omega$} & \mc{$i$} & \mc{$a$} & \mc{$a$} &
\multicolumn{1}{c@{}}{$M_1$} \\[0.33ex]
& (dny) & (RJD) & & \mc{($^\circ$)} & \mc{($^\circ$)}
& \mc{($\mathrm{R}_{\odot}$)} & \mc{($\mathrm{M}_{\odot}$)} & \multicolumn{1}{c@{}}{($\mathrm{M}_{\odot}$)} \\
\midrule
Bla bla bla bla bla bla 
& 5,732436(15) & 54002,780(46) 
& 12.345 & 12.345 & 123.45 & 123.45 & 123.45 & 123.45\\
\bottomrule
\addlinespace
\multicolumn{8}{@{}l}{\footnotesize\textit{Pozn:} $^a$ Směrodatná chyba odhadu metodou Monte Carlo.}
\end{tabularx}

\caption{Maximálně věrohodné odhady v~modelu M.}\label{tab03:Nejaka}
\end{table}

\end{document}

答案2

我建议使用siunitx,它涵盖的内容比它多得多dcolumn

\documentclass[12pt,a4paper]{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}

\usepackage[margin=2.5cm]{geometry}  % choose suitable text block parameters
\usepackage{lmodern,textcomp}

\usepackage{amsmath,amssymb,bm} 
\usepackage[nottoc]{tocbibind}
\usepackage{booktabs,siunitx} 

\newcommand{\Mo}{\mathrm{M}_{\odot}}
\newcommand{\Ro}{\mathrm{R}_{\odot}}

\begin{document}

\begin{table}
\footnotesize

\begin{tabular*}{\textwidth}{
  @{\extracolsep{\fill}}
  l
  S[table-format=1.6(2)]
  S[table-format=5.3(2)]
  S[table-format=2.3]
  *{5}{S[table-format=3.2]}
  @{}
}
\toprule
Zdroj & 
{$P$} & 
{$T_0$}  & 
{$e$} &
{$\omega$} & 
{$i$} & 
{$a$} & 
{$a$} &
{$M_1$} \\[0.33ex]
  & {(dny)}
  & {(RJD)}
  & {} 
  & {(${}^\circ$)} 
  & {(${}^\circ$)} 
  & {($\Ro$)}
  & {($\Mo$)}
  & {($\Mo$)}   
  \\
\midrule

1 & 5,732436(15) & 54002,780(46) & 12.345 & 123.45 & 123.45 & 123.45 & 123.45 &\\

\bottomrule
\addlinespace
\multicolumn{9}{@{}l}{\textit{Pozn:} $^a$ Směrodatná chyba odhadu metodou Monte Carlo.}
\end{tabular*}

\caption{Maximálně věrohodné odhady v~modelu M.}\label{tab03:Nejaka}
\end{table}

\end{document}

请注意\rm已被弃用 20 多年了。正确的语法是\mathrm{M}_{\odot},但我添加了几个新命令以方便输入。

也可以看看斯洛伐克语(和捷克语)babel 给出了 cmidrule 和 cline 的问题解决的问题\cmidrule

在此处输入图片描述

相关内容