我想用 MetaPost 包绘制图形graph
。我刚刚注意到,当不是时,setrange
不接受负坐标。-numbersystem
scale
更准确地说,它取它们的绝对值,因此setrange(-4,0,11,100)
实际上将其视为setrange(4,0,11,100)
。
有人知道如何解决这个问题吗?
下面的示例重现了该错误。
outputformat:="eps";
prologues:=3;
input graph
outputtemplate:="figure-01.eps";
beginfig(1);
Width:=7cm;
draw begingraph(Width,0.618034*Width);
setrange(-4,0,+11,100);
gdraw "setrange.data";
endgraph;
endfig;
bye;
使用数据文件setrange.data
-10 100
-9 81
-8 64
-7 49
-6 36
-5 25
-4 16
-3 9
-2 4
-1 1
0 0
1 1
2 4
3 9
4 16
5 25
6 36
7 49
8 64
9 81
10 100
答案1
这是新数字系统的一个错误。特别是,似乎marith.mp
只有 时 的部分才会起作用numbersystem=scaled
。
因此,解决这个问题的方法是(至少目前)在使用时坚持使用默认数字系统graph.mp
。