我对在 LaTeX 中绘制渐近线有疑问。我是渐近线使用方面的新手,在网上找到的手册中找不到任何帮助。
这就是问题所在。
从这个简单的代码开始
\begin{asy}
import patterns;
size(6cm,0);
draw(box((0,0), (2,1)));
pen p=1.5bp+.9red;
pair A=(0,0), B=(0,1), C=(0.7,1), D=(2,0.35),E=(2,0);
add("shd",hatch(H=3mm,dir=SE,red));
filldraw(A--B--C--D--E--cycle,pattern("shd"),p);
\end{asy}
效果很好,可以遮蔽直线所限定的区域,我想将线段 CD 更改为曲线 $f(x)=0.7/x$。这是我的一次幼稚尝试:
\begin{asy}
import patterns;
import graph;
size(6cm,0);
draw(box((0,0), (2,1)));
pen p=1.5bp+.9red;
pair A=(0,0), B=(0,1), C=(0.7,1), D=(2,0.35), E=(2,0);
real f(real x) {return 0.7/x}
add("shd",hatch(H=3mm,dir=SE,red));
filldraw(A--B--C--graph(f,0.7,2)--D--E--cycle,pattern("shd"),p);
\end{asy}
然而,它不起作用。
提前感谢您的帮助。
答案1
对于 Asymptote 初学者来说,你解决了脚本中的所有难题,这让我印象深刻!你只是在返回语句中忘记了一个分号。
感谢您提供有效和无效的示例代码!
\begin{asy}
import patterns;
import graph;
size(6cm,0);
draw(box((0,0), (2,1)));
pen p=1.5bp+.9red;
pair A=(0,0), B=(0,1), C=(0.7,1), D=(2,0.35), E=(2,0);
real f(real x) { return 0.7/x; } // <------ ADDED SEMICOLON HERE
add("shd",hatch(H=3mm,dir=SE,red));
filldraw(A--B--C--graph(f,0.7,2)--D--E--cycle,pattern("shd"),p);
\end{asy}