2020-05-05 08:09发布
[图]
\begin{tikzpicture} \colorlet{fillcolor}{cyan!70!gray!10!white} \colorlet{curvecolor}{cyan!70!black} \tikzmath{ \ymax=4.5;%y 轴的上端 \xmax=7.5;%x 轴的右端 \sizeA=0.2;%红色矩形框宽度 \sizeB=0.4;%箭头标签上部与曲线的水平间距 \domianL=1;%定义域左端点 \domainR=6.5;%定义域右端点 \samplesN=101;%自变量样本点的个数,个数不能太少 \onestep=(\domainR-\domianL)/(\samplesN-1);%相邻两个自变量样本点的间隔,要让 \onestep 是比较简单的有限数才好 \secondsample=\domianL+\onestep;%第二个自变量样本点 \pA=int(0.5*\samplesN);%一个自变量样本点的序号,对应的点用于添加标签 \pB=int(0.7*\samplesN);%一个自变量样本点的序号,对应的点用于画红色矩形 } %使用函数 sin(deg(pi/3*(\x-1)))+3 定义坐标点 (p1), (p2), ...... , (p\samplesN) \foreach \i[count=\j] in {\domianL,\secondsample,...,\domainR} {\coordinate (p\j) at (\i,{sin(deg(pi/3*(\i-1)))+3});} %几个需要加标签的点 \begin{scope}[inner sep=0pt,text height=1em] \path (0,0 -| p1) coordinate (a) node[below]{$a$} ; \path (0,0 -| p\pB) coordinate (x) node[below left]{$x$}; \path ($(x)+(\sizeA,0)$) coordinate (x+h) node[below right]{$x+h$}; \path (a -| p\samplesN) coordinate (b) node[below]{$b$}; \path (0,0) node[below]{$0$} ; \end{scope} %剪切填充色 \begin{scope} \clip (a) rectangle (x+h |- 0,\ymax); \fill [fill=fillcolor] (a) \foreach \i in {1,...,\samplesN}{--(p\i)} |- (a); \end{scope} %画标识线 \begin{scope}[thick] \draw [draw=red](a) --(p1); \draw [draw=red](x+h) rectangle (p\pB); \draw (p\samplesN) -- (b); \end{scope} %画箭头标识 \draw [{Bar[width=6mm]<}->]($(p\pB)+(-\sizeB,0)$) coordinate (t) -- node[fill=fillcolor,inner ysep=0pt,rotate=90]{$f(x)$} (t |- 0,0); %函数标签 \draw (p\pA) --++(20:0.8) node[right]{$y=f(t)$}; %函数曲线 \draw [draw=curvecolor,thick] (p1) \foreach \i in {2,...,\samplesN}{--(p\i)}; %坐标轴线 \draw [-Stealth,thick](0,0)--(\xmax,0) node [right] {$t$}; \draw [-Stealth,thick](0,0)--(0,\ymax) node [above] {$y$}; \end{tikzpicture}
这个例子 借用 @lichangkai 的例子里的函数,这是纯粹使用 tikz 的例子,需要多少了解一下 tikz 才好使。
比较起来,用 tkz-fct宏包方便一些,因为这个宏包提供现成的工具。
最多设置5个标签!
这个例子 借用 @lichangkai 的例子里的函数,这是纯粹使用 tikz 的例子,需要多少了解一下 tikz 才好使。
比较起来,用 tkz-fct宏包方便一些,因为这个宏包提供现成的工具。
一周热门 更多>