有没有一种快速有效的方法来创建像这样的带有垂直箭头的表格?
如果能提供合适的参考资料或 LaTeX 代码片段我将非常感激。
答案1
tabularx
以下是使用和 的概要答案tikz
。
我很抱歉(a)没有填写所有文本,以及(b)没有调整水平适合度和间距。
\documentclass[10pt]{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{arrows}
\usepackage{tabularx}
\newcommand{\vstrut}[1]{\rule{0pt}{#1}}
\begin{document}
\noindent\begin{tikzpicture}[>=latex]
\node [text width=7cm] (tb) {%
\begin{tabularx}{7cm}{|p{2.5cm}|X|}
\hline
Extraordinary uncertainty
& Fundamental Research\newline
Fundamental invention\\
\hline
\vstrut{2cm} & \\
\hline
\vstrut{2cm} & \\
\hline
\vstrut{2cm} & \\
\hline
\vstrut{2cm} & \\
\hline
\vstrut{2cm} & \\
\hline
\end{tabularx}
} ;
\node [
anchor=north west,
right=of tb.55,
text width=2cm] (br) {Basic\\Research};
\node [
anchor=west,
right=of tb.0,
text width=2cm] (dv) {Development};
\node [
anchor=south west,
right=of tb.305,
text width=2cm] (ar) {Applied\\Research};
\node [coordinate,right=of br.north east] (x1) {};
\node [coordinate,right=of ar.south east] (x2) {};
\draw [<->] (x1) to (x2);
\node [right=2cm of br,text width=2cm] {\bfseries\itshape Radical\\Innovation};
\node [right=2cm of ar,text width=2cm] {\bfseries\itshape Incremental\\Innovation};
\end{tikzpicture}
\end{document}
答案2
可以将multirow
包和 tikz 结合起来。我认为放置标题 A 和 B 之类的文本更容易。我只将 tikz 用于箭头。
\documentclass[11pt]{scrartcl}
\usepackage{tikz,multirow}
\begin{document}
\begin{tabular}{ | l | l | p{5cm} |l l}
\cline{1-3}
Day & Max Temp & Summary &\multirow{2}{*}{Title A} &
\multirow{2}{*}{\tikz[remember picture,overlay] \coordinate (a);\hspace*{2ex}\textbf{Top}} \\
\cline{1-3}
Monday & 22C & A clear day with lots of sunshine. However, the strong breeze will bring down the temperatures.& & \\ \cline{1-3}
Tuesday & 19C & Cloudy with rain, across many northern regions. Clear spells across most of Scotland and Northern Ireland, but rain reaching the far northwest.& &\\
\cline{1-3}
Wednesday & 21C & Rain will still linger for the morning. Conditions will improve by early afternoon and continue throughout the evening.&
\multirow{2}{*}[1em]{Title B} & \multirow{2}{*}[-4em]{\tikz[remember picture,overlay] \coordinate (b);\hspace*{2ex}\textbf{Below}} \\
\cline{1-3}
\end{tabular} %
\tikz[remember picture,overlay] \draw[<->] (a) --(b);
\end{document}