我对 Tikz 还很陌生,我正在尝试用颜色填充线条之间的一些空间。这是我的代码:
\begin{tikzpicture}
\node[scale=0.1] (a) at (1.5,1.5) {\phantom{$.$}};
\node[scale=0.1] (b) at (1.5,0.5) {\phantom{$.$}};
\node[scale=0.9] (c) at (7,3.5) {{$N_{\alpha}(t)$}};
\node[scale=0.9] (e) at (6,3) {{$N_d(t)$}};
\node[scale=0.1] (f) at (3.8,2.1) {\phantom{$.$}};
\node[scale=0.9] (g) at (5,1.5) {{Area $u(t)$}};
\draw[<->] (a) edge node[midway,fill=white] {{\scriptsize X($t$)}} (b);
\draw[-] (f)--(g);
\draw[thick,->] (0,0) -- (8,0) node[anchor=north west] {Time $t$};
\draw[thick,blue] (0,0) -- (0,0.5);
\draw[thick,blue] (0,0.5) -- (0.7,0.5);
\draw[thick,blue] (0.7,0.5) -- (0.7,1);
\draw[thick,blue] (0.7,1) -- (1.1,1);
\draw[thick,blue] (1.1,1) -- (1.1,1.5);
\draw[thick,blue] (1.1,1.5) -- (2,1.5);
\draw[thick,blue] (2,1.5) -- (2,2);
\draw[thick,blue] (2,2) -- (3,2);
\draw[thick,blue] (3,2) -- (3,2.5);
\draw[thick,blue] (3,2.5) -- (3.6,2.5);
\draw[thick,blue] (3.6,2.5) -- (3.6,3);
\draw[thick,blue] (3.6,3) -- (4.6,3);
\draw[thick,blue] (4.6,3) -- (4.6,3.5);
\draw[thick,blue] (4.6,3.5) -- (5.7,3.5);
\draw[thick,purple] (1,0) -- (1,0.5);
\draw[thick,purple] (1,0.5) -- (1.7,0.5);
\draw[thick,purple] (1.7,0.5) -- (1.7,1);
\draw[thick,purple] (1.7,1) -- (2.1,1);
\draw[thick,purple] (2.1,1) -- (2.1,1.5);
\draw[thick,purple] (2.1,1.5) -- (2.6,1.5);
\draw[thick,purple] (2.6,1.5) -- (2.6,2);
\draw[thick,purple] (2.6,2) -- (4,2);
\draw[thick,purple] (4,2) -- (4,2.5);
\draw[thick,purple] (4,2.5) -- (5,2.5);
\draw[thick,purple] (5,2.5) -- (5,3);
\draw[thick,purple] (5,3) -- (5.5,3);
\draw[thick,purple] (5.5,3) -- (5.5,3.5);
\draw[thick,purple] (5.5,3.5) -- (6.5,3.5);
\end{tikzpicture}
结果如下:
填充蓝线和紫线之间的空间最简单的方法是什么?
提前谢谢您!:)
答案1
我使用 重写了此代码pgfplots
,它旨在绘制数据和函数(而不是TiKz
更适合示意图)。这是我的初次尝试。您需要稍微调整一下选项以根据自己的喜好调整绘图。
\documentclass[mathserif]{beamer}
\usepackage{pgfplots}
\usepgfplotslibrary{fillbetween}
\pgfplotsset{compat=1.12}
\begin{document}
\vspace*{1in}
\begin{tikzpicture}
\begin{axis}[
xlabel = Time $t$,
xmin=-1,xmax = 9,
hide y axis,
axis x line=bottom,
xticklabels={,,},
xtick style = {draw = none},]
\node[scale=0.1] (a) at (axis cs: 1.5,1.5) {\phantom{$.$}};
\node[scale=0.1] (b) at (axis cs: 1.5,0.5) {\phantom{$.$}};
\node[scale=0.9] (c) at (axis cs: 7,3.5) {{$N_{\alpha}(t)$}};
\node[scale=0.9] (e) at (axis cs: 6,3) {{$N_d(t)$}};
\node[scale=0.1] (f) at (axis cs: 3.8,2.1) {\phantom{$.$}};
\node[scale=0.9] (g) at (axis cs: 5,1.5) {{Area $u(t)$}};
\draw[<->] (a) edge node[midway,] {{\scriptsize X($t$)}} (b);
\draw[-] (f)--(g);
\addplot[name path = A,no markers,color=blue,thick] coordinates {
(0,0)
(0,0.5)
(0.7,0.5)
(0.7,1)
(1.1,1)
(1.1,1.5)
(2,1.5)
(2,2)
(3,2)
(3,2.5)
(3.6,2.5)
(3.6,3)
(4.6,3)
(4.6,3.5)
(5.7,3.5)
};
\addplot[name path = B,no markers,color=purple,thick] coordinates {
(1,0)
(1,0.5)
(1.7,0.5)
(1.7,1)
(2.1,1)
(2.1,1.5)
(2.6,1.5)
(2.6,2)
(4,2)
(4,2.5)
(5,2.5)
(5,3)
(5.5,3)
(5.5,3.5)
(6.5,3.5) };
\addplot[gray!50] fill between[of=A and B];
\end{axis}
\end{tikzpicture}
\end{document}