我的桌子出了什麼問題?

我的桌子出了什麼問題?

我正在嘗試在表中寫入以下條目

\begin{table}[h]
\centering
$\begin{array}
\toprule
k & \lbrace c_{kj} : j=1, \cdots , 8 \rbrace  \\[1ex]
1 &  \lbrace 0 , 190 , 359 , 514 , 676 , 810 , 931 , 1013 \rbrace  \\
2 &  \lbrace 190 ,   0 , 178 , 333 , 496 , 630 , 750 , 831 \rbrace  \\
3 &  \lbrace 359, 178 ,   0 , 156 , 318 , 452 , 573 , 655 \rbrace  \\
4 & \lbrace 514 , 333 , 156 ,   0 , 246 , 297 , 417 , 499  \rbrace \\
5 &  \lbrace 676 , 496 , 318 , 246 ,   0 , 156 , 255 , 338   \rbrace \\
6 & \lbrace 810 , 630 , 452 , 297 , 156 ,   0 , 120 , 204 \rbrace  \\
7 &  \lbrace 931 , 750 , 573 , 417 , 255 , 120 ,   0  , 85  \rbrace \\
8 & \lbrace 1013 , 831 , 655 , 499 , 338 , 204 ,  85 ,   0 \rbrace   \\
\bottomrule
\end{array}$
\caption {$ \lbrace c_{kj} : j=1, \cdots , 8 \rbrace $ for $ k=1, \cdot 8$}
\end{table}

我收到幾個錯誤,其中第一個是“包數組錯誤”

誰能建議如何解決這個問題?謝謝!

答案1

語法錯誤(缺少環境參數array)已在評論和答案中進行了解釋。因此,這個答案使範例完整,並為矩陣中的所有係數添加了完全對齊。

\documentclass{article}
\usepackage{array}
\usepackage{booktabs}
\begin{document}
  \begin{table}[h]
    \centering
    $\begin{array}{
        c
        >{\lbrace\hfill}r@{$, $}
        *{6}{r@{$, $}}
        r<{\rbrace}
      }
      \toprule
      k & \multicolumn{8}{c}{\lbrace c_{kj}\colon j=1, \dots , 8 \rbrace} \\
      \midrule
      1 &  0   & 190 & 359 & 514 & 676 & 810 & 931 & 1013 \\
      2 &  190 &   0 & 178 & 333 & 496 & 630 & 750 &  831 \\
      3 &  359 & 178 &   0 & 156 & 318 & 452 & 573 &  655 \\
      4 &  514 & 333 & 156 &   0 & 246 & 297 & 417 &  499 \\
      5 &  676 & 496 & 318 & 246 &   0 & 156 & 255 &  338 \\
      6 &  810 & 630 & 452 & 297 & 156 &   0 & 120 &  204 \\
      7 &  931 & 750 & 573 & 417 & 255 & 120 &   0 &   85 \\
      8 & 1013 & 831 & 655 & 499 & 338 & 204 &  85 &    0 \\
      \bottomrule
    \end{array}$
    \caption {$ \lbrace c_{kj}\colon j=1, \dots , 8 \rbrace $ for $ k=1, \dots ,
  \end{table}
\end{document}

結果

評論:

  • 省略號的點應該位於此處的基線上,請參閱評論拉瑞法瑞。

  • 冒號在這裡是一個簡單的標點符號,而不是關係數學運算子。\colon是標點符號和:關係數學運算符。

  • array用於自動添加花括號。

  • 第二列使用了一個技巧:>{\lbrace\hfill}r將大括號放在左側,而儲存格內容則移動到右側。

答案2

您可能缺少列說明符

\begin{array}{cl}

然而,這種方法並沒有充分考慮到你有一個數字數組的事實,而且很難找到kj從表中。

因此,我建議使用另一種方​​法,借助siunitx其強大的數值資料功能。

\documentclass{article}
\usepackage{amsmath}
\usepackage{array}
\usepackage{booktabs}
\usepackage{siunitx}

\begin{document}

\begin{table}[htp]
\centering
\begin{tabular}{ c *{8}{S[table-format=4.0]} }
\toprule
\multicolumn{9}{c}{Values of $c_{kj}$} \\
\midrule
\makebox[2em]{$k$} &
  {$j=1$} & {$j=2$} & {$j=3$} & {$j=4$} & {$j=5$} & {$j=6$} & {$j=7$} & {$j=8$} \\
\cmidrule(lr){1-1} \cmidrule(lr){2-9}
1 &  0   & 190 & 359 & 514 & 676 & 810 & 931 & 1013 \\
2 &  190 &   0 & 178 & 333 & 496 & 630 & 750 &  831 \\
3 &  359 & 178 &   0 & 156 & 318 & 452 & 573 &  655 \\
4 &  514 & 333 & 156 &   0 & 246 & 297 & 417 &  499 \\
5 &  676 & 496 & 318 & 246 &   0 & 156 & 255 &  338 \\
6 &  810 & 630 & 452 & 297 & 156 &   0 & 120 &  204 \\
7 &  931 & 750 & 573 & 417 & 255 & 120 &   0 &   85 \\
8 & 1013 & 831 & 655 & 499 & 338 & 204 &  85 &    0 \\
\bottomrule
\end{tabular}
\caption {$\{c_{kj} : j=1,\dots,8\}$ for $k=1,\dots,8$}
\end{table}

\end{document}

請注意,不建議這樣\begin{table}[h]做,它還應該至少包括p,但htp可能更好。無論如何都會添加說明[h]符。t

請注意,逗號之間的點應位於較低位置;但更好的是加載,amsmath以便\dots通常能夠決定在兩個符號之間使用哪種點。

在此輸入影像描述

答案3

正如蓋斯勒所指出的。這是更新的版本

\documentclass[10pt,letterpaper]{article}
\begin{document}
\begin{table}[h]
\centering
$\begin{array}{cc}\hline
k & \lbrace c_{kj} : j=1, \cdots , 8 \rbrace  \\[1ex]
1 &  \lbrace 0 , 190 , 359 , 514 , 676 , 810 , 931 , 1013 \rbrace  \\
2 &  \lbrace 190 ,   0 , 178 , 333 , 496 , 630 , 750 , 831 \rbrace  \\
3 &  \lbrace 359, 178 ,   0 , 156 , 318 , 452 , 573 , 655 \rbrace  \\
4 & \lbrace 514 , 333 , 156 ,   0 , 246 , 297 , 417 , 499  \rbrace \\
5 &  \lbrace 676 , 496 , 318 , 246 ,   0 , 156 , 255 , 338   \rbrace \\
6 & \lbrace 810 , 630 , 452 , 297 , 156 ,   0 , 120 , 204 \rbrace  \\
7 &  \lbrace 931 , 750 , 573 , 417 , 255 , 120 ,   0  , 85  \rbrace \\
8 & \lbrace 1013 , 831 , 655 , 499 , 338 , 204 ,  85 ,   0 \rbrace   \\
\hline
\end{array}$
\caption {$ \lbrace c_{kj} : j=1, \cdots , 8 \rbrace $ for $ k=1, \cdot 8$}
\end{table}
\end{document}

相關內容