ラテックスでシンプルに描く

ラテックスでシンプルに描く

こんにちは。この簡単な図をラテックスで描きたいのですが、 シンプルドロー どなたか手伝っていただけますか?

答え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}

関連情報