我已经在 Google 上搜索了一些有关该主题的内容,但没有找到任何结果。
我正在尝试为我的大学课程写一些笔记。主题是“数值插值方法”。更准确地说,我必须建立一个“有限差分”表(这里有一个描述,大约在页面中间,您可以看到一个“三角形”的值表,这就是我必须做的),使用命令可以很容易地完成\multirow{n}*{text}
。
但是我需要添加一行来“链接”第一列的第一个单元格和第二列的第二个单元格。我该怎么做?
这是一个例子,您可以看到从一个单元格到另一个单元格的线条。
答案1
下面是使用的示例pst-node
(来自pstricks
捆绑)和array
(针对m{<len>}
列类型)。节点通过 标记\pnode(<x>,<y>){<name>}
,线条使用 绘制\psline(<node1>)(<node2>)
。
\documentclass{article}
\usepackage{pst-node}% http://ctan.org/pkg/pstricks
\usepackage{array}% http://ctan.org/pkg/array
\begin{document}
\newcolumntype{L}{@{}l@{}}%
\[
\begin{array}{*{5}{m{4em}}}
$x$ &
$f$ &
I~diff. &
II~diff. &
III~diff. \\[\jot]
$\begin{array}{L}
x_0 \\ x_1 \\ x_3
\end{array}$ &
$\begin{array}{L}
f(x_0)\pnode(0.5ex,0.6ex){fx0} \\ f(x_2) \\ f(x_3)\pnode(0.5ex,0.6ex){fx3}
\end{array}$ &
$\begin{array}{L}
\pnode(-0.5ex,0.6ex){fx1L}f(x_1)\pnode(0.5ex,0.6ex){fx1R} \\ \pnode(-0.5ex,0.6ex){fx2L}f(x_2)\pnode(0.5ex,0.6ex){fx2R}
\end{array}$ &
$\begin{array}{L}
\pnode(-0.5ex,0.6ex){fx0L}f(x_0)\pnode(0.5ex,0.6ex){fx0R} \\ \pnode(-0.5ex,0.6ex){fx12L}f(x_1)\pnode(0.5ex,0.6ex){fx12R}
\end{array}$ &
\pnode(-0.5ex,0.6ex){ans}$0.0333$
\end{array}
\]
\psline(fx0)(fx1L)
\psline(fx3)(fx2L)
\psline(fx1R)(fx0L)
\psline(fx2R)(fx12L)
\psline(fx0R)(ans)
\psline(fx12R)(ans)
\end{document}
还可以更改线条样式和箭头。需要通过latex
-> dvips
->ps2pdf
或直接使用进行编译。xelatex
答案2
解决方案\rnode
:
\documentclass{article}
\usepackage{pst-node,amsmath}
\begin{document}
\[
\begin{psmatrix}[rowsep=-2pt,colsep=1cm]
x & f & \text{I~diff.} & \text{II~diff.} & \text{III~diff.} \\[3mm]
x_0 & f(x_0) \\
& & f(x_1) & f(x_0) \\
x_1 & f(x_2) & & & 0.0333 \\
& & f(x_2) & f(x_1) \\
x_3 & f(x_3) \\
\end{psmatrix}
\]
\psset{arrows=->,nodesep=2pt,linecolor=red}
\ncline{2,2}{3,3} \ncline{6,2}{5,3} \ncline{3,3}{3,4}
\ncline{5,3}{5,4} \ncline{3,4}{4,5}\ncline{5,4}{4,5}
\end{document}
答案3
还没有 tikz 解决方案?我很幸运(纯文本格式):
\input tikz
\usetikzlibrary{matrix,chains,scopes,arrows}
\tikzpicture[every on chain/.style={join={by <<-o,blue!60}}]
\matrix[matrix of math nodes,column sep=2em,row sep=-2ex] (mx) {
% "mx" is now the name of our matrix, to which we can refer to later
x & f & \hbox{I diff.} & \hbox{II diff.} & \hbox{III diff.} \\[2ex]
x_0 & f(x_0) \\
& & f(x_1) & f(x_0) \\
x_1 & f(x_2) & & & 0.0333 \\
& & f(x_2) & f(x_1) \\
x_2 & f(x_3) \\
};
{[start chain]
\chainin (mx-4-5);
{[start branch] \chainin (mx-3-4); \chainin (mx-3-3); \chainin (mx-2-2); }
{[start branch] \chainin (mx-5-4); \chainin (mx-5-3); \chainin (mx-6-2); }
}
\endtikzpicture
\bye
好像:
答案4
由于未提供 MWE,因此以下答案旨在获得所需的输出。我使用 PSTricks 进行定位并获取线段。
\documentclass[12pt]{report}
\usepackage{graphicx}
\usepackage{pstricks}
\begin{document}
\begin{pspicture*}(0,0)(15,-5)
\rput[tl](0,0){$x$}
\rput[tl](3,0){$f$}
\rput[tl](6,0){I diff}
\rput[tl](9,0){II diff}
\rput[tl](12,0){III diff}
\rput[tl](0,-1.1){$x_0$}
\rput[tl](3,-1){$f(x_0)$}
\rput[tl](0,-2.1){$x_1$}
\rput[tl](3,-2){$f(x_2)$}
\rput[tl](0,-3.1){$x_3$}
\rput[tl](3,-3){$f(x_3)$}
\rput[tl](6,-1.5){$f(x_1)-f(x_0)$}
\rput[tl](6,-2.5){$f(x_2)-f(x_1)$}
\rput[tl](9,-2){$0.0333$}
\psline[linecolor=blue](4,-1.3)(6,-1.7)
\psline[linecolor=blue](4,-3.3)(6,-2.7)
\psline[linecolor=blue](8.5,-1.8)(8.9,-2.2)
\psline[linecolor=blue](8.5,-2.8)(8.9,-2.2)
\end{pspicture*}
\end{document}