我需要创建一个包含以下数据的表格:
\documentclass[t,11pt]{beamer}
\usetheme{Warsaw}
\usepackage[brazil,shorthands=off]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{graphicx}
\usepackage{tikz,pgfplots}
\usepackage{booktabs}
\begin{document}
\begin{frame}{Método da bissecção}
\begin{footnotesize}
\begin{table}[!htb]
\centering
\caption{14 iterações do método da bissecção para $f(x)=2-e^x$}
\label{tab:my-table}
%\begin{tabular}{rrrrr}
\begin{tabular}{rrrrr}
\toprule
$k$ & $a_k$ & $p_k$ & $b_k$ & $|\log 2 - p_k|$ \\ \midrule
1.0 & 0.0 & 1.0 & 2.0 & 0.306853 \\
2.0 & 0.0 & 0.5 & 1.0 & 0.193147 \\
3.0 & 0.5 & 0.75 & 1.0 & 0.0568528 \\
4.0 & 0.5 & 0.625 & 0.75 & 0.0681472 \\
5.0 & 0.625 & 0.6875 & 0.75 & 0.00564718 \\
6.0 & 0.6875 & 0.71875 & 0.75 & 0.0256028 \\
7.0 & 0.6875 & 0.703125 & 0.71875 & 0.00997782 \\
8.0 & 0.6875 & 0.695312 & 0.703125 & 0.00216532 \\
9.0 & 0.6875 & 0.691406 & 0.695312 & 0.00174093 \\
10.0 & 0.691406 & 0.693359 & 0.695312 & 0.000212199 \\
11.0 & 0.691406 & 0.692383 & 0.693359 & 0.000764371 \\
12.0 & 0.692383 & 0.692871 & 0.693359 & 0.000276091 \\
13.0 & 0.692871 & 0.693115 & 0.693359 & 3.19506e-5 \\
14.0 & 0.693115 & 0.693237 & 0.693359 & 9.0194e-5 \\
\bottomrule
\end{tabular}
\end{table}
\end{footnotesize}
\end{frame}
\end{document}
我想:
- 消除第一列右边的零
- 将第 2、3 和 4 列四舍五入为小数点后 6 位,小数点后位数较少时用零补足。
- 将小数点后 4 位四舍五入为 6 位,
- 以十进制方式写出 3.19506e-5。
答案1
不太清楚您想要什么。您的表格数字最多有 6 位小数,而不是 8 位。您喜欢用零填充小数吗?
无论如何,我怀疑你正在寻找这样的东西:
使用包S
中定义的列siunitx
可以自定义数字的呈现(按小数点对齐):
\documentclass[t,11pt]{beamer}
\usetheme{Warsaw}
\usepackage[brazil,shorthands=off]{babel}
\usepackage{amsmath, amssymb}
\usepackage{pgfplots}
\usepackage{booktabs}
\usepackage{siunitx}
\begin{document}
\begin{frame}
\frametitle{Table}
\begin{table}
\caption{}
\label{tab:my-table}
\small
\begin{tabular}{r*{3}{S[table-format=1.6]}}
\hline
$k$ & $a_k$ & $p_k$ & $b_k$ \\
\hline
1 & 0.0 & 0.5 & 1.0 \\
2 & 0.5 & 0.75 & 1.0 \\
3 & 0.5 & 0.625 & 0.75 \\
4 & 0.625 & 0.6875 & 0.75 \\
5 & 0.6875 & 0.71875 & 0.75 \\
6 & 0.6875 & 0.703125 & 0.71875 \\
7 & 0.6875 & 0.695312 & 0.703125 \\
8 & 0.6875 & 0.691406 & 0.695312 \\
9 & 0.691406 & 0.693359 & 0.695312 \\
10 & 0.691406 & 0.692383 & 0.693359 \\
11 & 0.692383 & 0.692871 & 0.693359 \\
12 & 0.692871 & 0.693115 & 0.693359 \\
13 & 0.693115 & 0.693237 & 0.693359 \\
14 & 0.693115 & 0.693176 & 0.693237 \\
\hline
\end{tabular}
\end{table}
\end{frame}
\end{document}
附录:
现在,在提供自己的(现已删除)“答案”(应该插入到您的问题中)后,问题更加清晰。借助进一步的S
列选项,您可以实现以下目标:
\documentclass[t,11pt]{beamer}
\usetheme{Warsaw}
\usepackage[brazil,shorthands=off]{babel}
\usepackage{mathtools, amssymb}
\DeclarePairedDelimiter\abs{\lvert}{\rvert}
\usepackage{booktabs}
\usepackage{siunitx} % <---
\begin{document}
\begin{frame}
\frametitle{Método da bissecção}
\begin{table}
\caption{14 iterações do método da bissecção para $f(x)=2-e^x$}
\label{tab:my-table}
\footnotesize
\begin{tabular}{S[table-format=2.0,
zero-decimal-to-integer]
*{3}{S[table-format=1.6,
round-integer-to-decimal,
round-mode=places,
round-precision = 6]}
S[table-format=1.8,
round-integer-to-decimal,
round-mode=places,
round-precision = 8,
scientific-notation = fixed,
fixed-exponent = 0]}
\toprule
$k$ & {$a_k$} & {$p_k$} & {$b_k$} & {$\abs{\log 2 - p_k}$} \\
\midrule
1.0 & 0.0 & 1.0 & 2.0 & 0.306853 \\
2.0 & 0.0 & 0.5 & 1.0 & 0.193147 \\
3.0 & 0.5 & 0.75 & 1.0 & 0.0568528 \\
4.0 & 0.5 & 0.625 & 0.75 & 0.0681472 \\
5.0 & 0.625 & 0.6875 & 0.75 & 0.00564718 \\
6.0 & 0.6875 & 0.71875 & 0.75 & 0.0256028 \\
7.0 & 0.6875 & 0.703125 & 0.71875 & 0.00997782 \\
8.0 & 0.6875 & 0.695312 & 0.703125 & 0.00216532 \\
9.0 & 0.6875 & 0.691406 & 0.695312 & 0.00174093 \\
10.0 & 0.691406 & 0.693359 & 0.695312 & 0.000212199 \\
11.0 & 0.691406 & 0.692383 & 0.693359 & 0.000764371 \\
12.0 & 0.692383 & 0.692871 & 0.693359 & 0.000276091 \\
13.0 & 0.692871 & 0.693115 & 0.693359 & 3.19506e-5 \\
14.0 & 0.693115 & 0.693237 & 0.693359 & 9.0194e-5 \\
\bottomrule
\end{tabular}
\end{table}
\end{frame}
\end{document}
笔记:
beamer
加载graphicx
包,因此您不需要(重新)加载两次......- 在 2018 年 4 月之后安装的 LaTeX 中,
utf8
输入编码是默认功能,因此不再需要\usepackage[utf8]{inputenc}
在文档序言中使用(LATEX 新闻)。 - 题外话:检查表格最后一列的值。如果按照列标题中所述进行计算,则它们不正确。
答案2
您可以使用数字打印包,它允许您将表中的数字四舍五入到小数点后一位(我认为这是您要求的正确吗?)。
还有一个问题实际上回答了这个问题,如果你想了解更多信息,请查看这里