使用“esami”包生成随机图

使用“esami”包生成随机图

我想使用esami包中的变量显示具有随机变化的图形。我尝试使用 tikz,但当我将其放入\FPsv点的坐标中时,我收到很多错误消息。这是我的代码:

\FPsetpar{s0}{-4}{4}

\begin{tikzpicture}
\begin{axis}[
  axis x line=middle, axis y line=middle, grid=both,
  ymin=-5, ymax=5, ytick={-5,...,5}, ylabel=$s$,
  xmin=0, xmax=8, xtick={0,...,8}, xlabel=$t$,
  domain=0:8,samples=101, % added
]
\draw [very thick] (0,\FPsv{s0}) to (1,1) to (2,1);
\end{axis}
\end{tikzpicture} 

我做错了什么吗?也许我应该使用不同的包来完成这项任务?

答案1

如果要在tikz代码中使用宏,其名称不能包含数字,只能包含字母。此外,最好在tikz代码外部生成计算值,方法是使用宏,\FPval如以下示例所示:

\FPsetpar{a}{2}{8}
\FPsetpar{m}{2}{8}
\FPval{c}{m*a-1}
\FPsetpar{b}{2}{\c}
\FPsetpar{ka}{1}{2}

\begin{tikzpicture}

\draw[thick,->](-\a,0)--(4,0)node[below]{$x$};
\draw[thick,->](0,-1)--(0,3)node[right]{$y$};
\draw[dotted,thick] (2,1.5)--(2,0);
\draw[dotted,thick] (2,1.5)--(2,1.5);
\draw[fill] (2,1.5) circle (1pt);
\node at (2,-.3){\scriptsize{$\a$}};
\node at (-.3,1.5){\scriptsize{$\sempli{b}{2}$}};
\draw[dashed] (\ka,1.5) circle (2.5cm);
\end{tikzpicture}

然而,目前该练习的参数版本还不起作用。

您还可以使用该pstricks包来处理图形中的参数。

答案2

您不需要使用 esami 包来生成随机数。以下代码也为第一个坐标赋予了区间内的随机值[-4,4]

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
  axis x line=middle, axis y line=middle, grid=both,
  ymin=-5, ymax=5, ytick={-5,...,5}, ylabel=$s$,
  xmin=0, xmax=8, xtick={0,...,8}, xlabel=$t$,
  domain=0:8,samples=101, % added
]
\draw [very thick] (0,{8*(rand-0.5)}) to (1,1) to (2,1);
\end{axis}
\end{tikzpicture} 
\end{document}

在此处输入图片描述

相关内容