你好,我想在乳胶中画出这个简单的图形, 有人可以帮帮我吗?
答案1
这是一种可能性,使用TikZ
和链条:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{fit,chains}
\begin{document}
\begin{tikzpicture}[
simple/.style={draw,text width=1.5cm,align=center,minimum size=2.5em},
start chain,
node distance=12mm
]
\node[on chain] (xn) {$x[n]$};
\node[on chain,simple] (dft) {DFT};
\node[on chain,simple] (log) {log};
\node[on chain,simple] (idf) {IDFT};
\node[on chain] (cn) {$c[n]$};
\node[draw,dashed, fit= (dft) (idf),inner sep=12pt] {};
\draw[->] (xn) -- (dft);
\draw[->] (dft) -- node[auto] {$X[k]$} (log);
\draw[->] (log) -- node[auto] {$\hat{X}[k]$} (idf);
\draw[->] (idf) -- (cn);
\end{tikzpicture}
\end{document}
这个想法是为“内部”节点定义一种样式;将节点放在一个链中,用一些标签绘制箭头,并使用fit
库绘制外部矩形。
同样的图表也可以通过许多其他方式生成;例如,这次使用这个positioning
库:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[
simple/.style={draw,text width=1.5cm,align=center,minimum size=2.5em},
node distance=12mm
]
\node (xn) {$x[n]$};
\node[simple,right = of xn] (dft) {DFT};
\node[simple,right = of dft] (log) {log};
\node[simple,right = of log] (idf) {IDFT};
\node[,right = of idf] (cn) {$c[n]$};
\draw[dashed] ([xshift=-12pt,yshift=12pt]dft.north west) rectangle ([xshift=12pt,yshift=-12pt]idf.south east) ;
\draw[->] (xn) -- (dft);
\draw[->] (dft) -- node[auto] {$X[k]$} (log);
\draw[->] (log) -- node[auto] {$\hat{X}[k]$} (idf);
\draw[->] (idf) -- (cn);
\end{tikzpicture}
\end{document}