Asy 图问题 ---- 函数 'xaxis..... 的调用不明确

Asy 图问题 ---- 函数 'xaxis..... 的调用不明确
unitsize(1cm);
defaultpen(linewidth(.8pt)+fontsize(8pt));

fill((2/3,0)--(3,3)--(3,1)--(2,1)--(2,0)--cycle,gray);

xaxis("$x$",-0.5,4,EndArrow(HookHead,4));
yaxis("$y$",-0.5,4,EndArrow(4));

draw((0,1)--(3,1)--(3,3)--(2,3)--(2,0));
draw((1,0)--(1,2)--(3,2));
draw((2/3,0)--(3,3));

label("$(c,0)$",(2/3,0),S);
label("$(3,3)$",(3,3),NE);

从这里复制

https://artofproblemsolving.com/wiki/index.php?title=2009_AMC_10B_Problems&action=edit&section=17

编译时出现错误:

函数 'xaxis(string, int, int, bool(picture, path, pen, marginT(path, pen)))' 的调用不明确

我的输出缺少轴...... 在此处输入图片描述

有人知道我该如何修复这个问题吗?

谢谢。

**2021 年 1 月 5 日更新**

嗯,也许我需要重新做我的整个 MikTeX 和 Asy 发行版…… 在此处输入图片描述 添加import graph;不会改变任何东西...

答案1

您只需import graph;在代码开头添加,这样 Asymptote 就能理解xaxis,yaxis命令)。我稍微修改了您的代码。

在此处输入图片描述

import graph;
unitsize(1cm);

real c=2/3;
filldraw((c,0)--(3,3)--(3,1)--(2,1)--(2,0)--cycle,lightyellow);
draw((0,1)--(3,1)--(3,3)--(2,3)--(2,0)--(1,0)--(1,2)--(3,2));

label(scale(.6)*"$(c,0)$",(c,0),S);
label(scale(.6)*"$(3,3)$",(3,3),N);

xaxis("$x$",-.5,4,EndArrow(TeXHead));
yaxis("$y$",-.5,4,EndArrow(TeXHead));

add(bbox(5mm,invisible));

另外,无需使用graph模块,您可以直接绘制轴。

在此处输入图片描述

unitsize(1cm);

real c=2/3;
filldraw((c,0)--(3,3)--(3,1)--(2,1)--(2,0)--cycle,lightcyan);
draw((0,1)--(3,1)--(3,3)--(2,3)--(2,0)--(1,0)--(1,2)--(3,2));

label(scale(.6)*"$(c,0)$",(c,0),S);
label(scale(.6)*"$(3,3)$",(3,3),N);

draw(Label("$x$",align=SW,EndPoint),(-.5,0)--(4,0),Arrow(TeXHead));
draw(Label("$y$",align=SW,EndPoint),(0,-.5)--(0,4),Arrow(TeXHead));

add(bbox(5mm,invisible));

相关内容