如何在 J 中输出多个图?

How to output multiple plots in J?

在J编程中,我有好几行plot代码,不是plot就是pd'show',但是输出的只是最后一个plot。我应该如何解决这个问题?谢谢!

x =: 1 2 3 4 5 6 y =: 2 3 4 5 6 7

z =: 4 6 7 9 5 3

我知道将两者放在一张图中就像 x;y,:z

但我想输出两个图,例如: plot1 是 x;y plot2 是 x;z

但每次我 运行 代码时,我只显示 x;z

这里发生的是地块 window 被重复使用。我认为这是有意让用户不必清理在查看后创建的每个图。

解决这个问题的方法是使用 J 的面向对象方面,以便每个 window 都被视为一个单独的对象。 Ric Sherlock 在 https://code.jsoftware.com/wiki/Plot/Class 对此进行了很好的描述,但请尝试以下答案以查看它是否适合您。

   x =: 1 2 3 4 5 6
   y =: 2 3 4 5 6 7
   z =: 4 6 7 9 5 3

   a=: conew 'jzplot'
   b=: conew 'jzplot'
   plot__a x;z
   plot__b x;y

并在关闭 windows 后,清除支持带有

的对象的语言环境
   codestroy__a ''
1
   codestroy__b ''
1

面向对象编程在 J 的实验室中有很好的介绍,如果您不熟悉它,那么值得一看以了解上述代码的技术细节。