- 阅读权限
- 255
- 威望
- 7 级
- 论坛币
- 117070 个
- 通用积分
- 31670.9540
- 学术水平
- 1454 点
- 热心指数
- 1573 点
- 信用等级
- 1364 点
- 经验
- 384134 点
- 帖子
- 9629
- 精华
- 66
- 在线时间
- 5508 小时
- 注册时间
- 2007-5-21
- 最后登录
- 2025-7-8
|
- 我们可以让这个图动起来,参见代码:
- %!TEX program = pdflatex
- \documentclass{article}
- \usepackage{mathpazo}
- \usepackage{tikz}
- \usetikzlibrary{arrows,intersections}
- \begin{document}
- % 为了使用 Acrobat 删除外围区域,需要设置没有页码
- \pagestyle{empty}
- % TikZ 设定
- \tikzset{thick,
- > = stealth',
- dot/.style = {draw,fill=white,circle,inner sep=0pt,minimum size=4pt}
- }
- \foreach \Q in {4,4.1,4.2,...,5,4.9,4.8,...,4.1} { %<-- added
- \begin{tikzpicture}
- % 画坐标系 并且定义了 O 、xmax 和 ymax
- \coordinate (O) at (0,0);
- \draw[->] (-0.3,0) -- (8,0) coordinate[label={below:$x$}] (xmax);
- \draw[->] (0,-0.3) -- (0,5) coordinate[label={right:$f(x)$}] (ymax);
- % 给出直线 x 与曲线 y 的路径
- \path[name path=x] (0.3,0.5) -- (6.7,4.7);
- \path[name path=y] plot[smooth] coordinates {(-0.3,2) (2,1.5) (\Q,2.8) (6,5)}; %<-- modified
- % 利用 intersections 包的计算方法,得到了直线与曲线的交点坐标,分别命名为 i-1 和 i-2 (图中分别为 P 和 Q) 过点 P 的水平线与过 Q 的竖直延长线的交点标记为 M.
- \begin{scope}[name intersections = {of= x and y,name = i}]
- % 将PQ所形成的三角形区域(PQM)填充为灰色
- \fill[gray!20] (i-1) -- (i-2 |- i-1) -- (i-2) -- cycle;
- % 在空白处标记 Sekante
- \draw (0.3,0.5) -- (6.7,4.7) node[pos=0.8,below right] {Sekante};
- % 画出曲线路径 y,与之前代码几乎一样
- \draw[red] plot[smooth] coordinates {(-0.3,2) (2,1.5) (\Q,2.8) (6,5)}; %<-- modified
- % 从 P 向 x 轴引垂线,垂足坐标为 (i-1 |- O),标签为 x_0
- \draw (i-1) node[dot,label={above:$P$}] (i-1) {} -- node[left] {$f(x_0)$} (i-1 |- O) node[dot,label={below:$x_0$}] {};
- % Q 点向 M 引垂线
- \path (i-2) node[dot,label={above:$Q$}] (i-2) {} -- (i-2 |- i-1) node[dot,label={right:$M$}] (i-12) {};
- % M 向 x 轴引垂线,并且标注
- \draw (i-12) -- (i-12 |- O) node[dot,label={below:$x_0 + \varepsilon$}] {};
- % 连接 Q 与 M,并且标注
- \draw[blue,<->] (i-2) -- node[right] {$f(x_0 + \varepsilon) - f(x_0)$} (i-12);
- % 连接 P 与 M
- \draw[blue,<->] (i-1) -- node[below] {$\varepsilon$} (i-12);
- % x 轴上两个垂足之间标记
- \path (i-1 |- O) -- node[below] {$\varepsilon$} (i-2 |- O);
- % Q 的水平延长线
- \draw[gray] (i-2) -- (i-2 -| xmax);
- % 标注 Q 点的垂直距离,最精彩的是用到了 xshift=-0.5cm,简直赞!
- \draw[gray,<->] ([xshift=-0.5cm]i-2 -| xmax) -- node[fill=white] {$f(x_0 + \varepsilon)$} ([xshift=-0.5cm]xmax);
- \end{scope}
- \end{tikzpicture}
- \eject %<-- added
- } %<-- added
- \end{document}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- %!TEX program = pdflatex
-
- \documentclass{article}
-
- \usepackage{mathpazo}
- \usepackage{tikz}
- \usetikzlibrary{arrows,intersections}
-
- \begin{document}
- % 为了使用 Acrobat 删除外围区域,需要设置没有页码
- \pagestyle{empty}
- % TikZ 设定
- \tikzset{thick,
- > = stealth',
- dot/.style = {draw,fill=white,circle,inner sep=0pt,minimum size=4pt}
- }
- \foreach \Q in {4,4.1,4.2,...,5,4.9,4.8,...,4.1} { %<-- added
- \begin{tikzpicture}
- % 画坐标系 并且定义了 O 、xmax 和 ymax
- \coordinate (O) at (0,0);
- \draw[->] (-0.3,0) -- (8,0) coordinate[label={below:$x$}] (xmax);
- \draw[->] (0,-0.3) -- (0,5) coordinate[label={right:$f(x)$}] (ymax);
- % 给出直线 x 与曲线 y 的路径
- \path[name path=x] (0.3,0.5) -- (6.7,4.7);
- \path[name path=y] plot[smooth] coordinates {(-0.3,2) (2,1.5) (\Q,2.8) (6,5)}; %<-- modified
-
- % 利用 intersections 包的计算方法,得到了直线与曲线的交点坐标,分别命名为 i-1 和 i-2 (图中分别为 P 和 Q) 过点 P 的水平线与过 Q 的竖直延长线的交点标记为 M.
-
- \begin{scope}[name intersections = {of= x and y,name = i}]
- % 将PQ所形成的三角形区域(PQM)填充为灰色
- \fill[gray!20] (i-1) -- (i-2 |- i-1) -- (i-2) -- cycle;
- % 在空白处标记 Sekante
- \draw (0.3,0.5) -- (6.7,4.7) node[pos=0.8,below right] {Sekante};
- % 画出曲线路径 y,与之前代码几乎一样
- \draw[red] plot[smooth] coordinates {(-0.3,2) (2,1.5) (\Q,2.8) (6,5)}; %<-- modified
- % 从 P 向 x 轴引垂线,垂足坐标为 (i-1 |- O),标签为 x_0
- \draw (i-1) node[dot,label={above:$P$}] (i-1) {} -- node[left] {$f(x_0)$} (i-1 |- O) node[dot,label={below:$x_0$}] {};
- % Q 点向 M 引垂线
- \path (i-2) node[dot,label={above:$Q$}] (i-2) {} -- (i-2 |- i-1) node[dot,label={right:$M$}] (i-12) {};
- % M 向 x 轴引垂线,并且标注
- \draw (i-12) -- (i-12 |- O) node[dot,label={below:$x_0 + \varepsilon$}] {};
- % 连接 Q 与 M,并且标注
- \draw[blue,<->] (i-2) -- node[right] {$f(x_0 + \varepsilon) - f(x_0)$} (i-12);
- % 连接 P 与 M
- \draw[blue,<->] (i-1) -- node[below] {$\varepsilon$} (i-12);
- % x 轴上两个垂足之间标记
- \path (i-1 |- O) -- node[below] {$\varepsilon$} (i-2 |- O);
- % Q 的水平延长线
- \draw[gray] (i-2) -- (i-2 -| xmax);
- % 标注 Q 点的垂直距离,最精彩的是用到了 xshift=-0.5cm,简直赞!
- \draw[gray,<->] ([xshift=-0.5cm]i-2 -| xmax) -- node[fill=white] {$f(x_0 + \varepsilon)$} ([xshift=-0.5cm]xmax);
- \end{scope}
-
- \end{tikzpicture}
- \eject %<-- added
- } %<-- added
- \end{document}
复制代码
|
|