我有以下代码:
\begin{tikztimingtable}[%
timing/dslope=0.1,
timing/.style={x=5ex,y=2ex},
x=5ex,
timing/rowdist=3ex,
timing/name/.style={font=\sffamily\scriptsize}
]
CLK & h 10{c} \\
\begin{extracode}
\begin{background}
\vertlines[lightgray,dotted]{}
\draw [->,>=latex] (0,\rowdist) -- (\twidth,\rowdist);
\foreach \n in {0,1,...,\twidth}
\draw (\n+.5,\rowdist+.2) -- +(0,+.0)
node [above,inner sep=2pt] {\scalebox{1}{\tiny\n}};
\end{background}
\end{extracode}
\end{tikztimingtable}
我的问题是如何去掉最后的“5”?我尝试使用,\twidth-1
但它给出了一个错误。
答案1
这不是一个答案,而是一个截断宏使用的演示——因为 OP 发现它很难使用\twidth-1
——你现在可以使用
\foreach \n in {0,1,...,\twidth}
\pgfmathtruncatemacro{\j}{\twidth - 1}% added here
\draw (\n+.5,\rowdist+.2) -- +(0,+.0)
node [above,inner sep=2pt] {\scalebox{1}{\tiny\n}};
你需要给我们一个可编译的代码来使用
平均能量损失
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node (N1) {N1};
\foreach \i in {2,3,..,5}{
\pgfmathtruncatemacro{\j}{\i - 1}
% balance of foreach code
}
\end{tikzpicture}
\end{document}
编辑
宏的替代方法\pgfmathtruncate
可以是表达式
\foreach \n in {1,2,...,\the\numexpr\textwidth-1}
平均能量损失
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node (N1) {N1};
\foreach \i in {2,3,...,\the\numexpr\i-1}{
%\pgfmathtruncatemacro{\j}{\i - 1}
% whatever
}
\end{tikzpicture}
\end{document}