我有一張如下表所示的表,想用 Latex 寫它。最好的方法是什麼?我已經用 Tikz 嘗試過,我可以在其中嵌套一個表,但連接不同字段的線失敗了。另一個解決方案是使用 tikz 樹,但我不知道如何標記邊緣。
是否可以在 TikZ 或任何其他乳膠包中透過簡單的標記創建類似的東西?
答案1
這是 tikz 矩陣解的開始
\documentclass[11pt]{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
[every node/.style={minimum height=2em}]
\matrix [matrix of math nodes](Mat)
{
x_i &|[minimum width=4em]|& P(x_i) &|[minimum width=4em]| Code & &|[minimum width=4em]| & &|[minimum width=4em]| & &|[minimum width=4em]| & &\\
x_1 &&0.30 & & 0.30 & &0.30 & &0.45& &0.55&\\
x_2 && 0.25 & & 0.25 & &0.25 & &0.30& &0.45&\\
x_3 && 0.20 & & 0.20 & &0.25 & &0.25& & &\\
x_4 && 0.12 & &0.13 & &0.20 & & & & &\\
x_5 && 0.08 & &0.12 & & & & & & &\\
x_6 && 0.05 & & & & & & & & &\\
};
\draw (Mat-2-3.east) -- (Mat-2-3-|Mat-2-5.west)node[above,midway]{00};
\draw(Mat-5-3.east) --++(1em,0) -- (Mat-6-5.west)node[above,pos=0.2]{101};
\draw (Mat-6-3.east)-|node[above,pos=0.4]{1000}++(2em,-1em) coordinate(aa) --++(1em,0) |- (Mat-5-5.west);
\draw (Mat-7-3.east)-|node[below,pos=0.4]{1001} (aa);
\end{tikzpicture}
\end{document}