Здесь происходит то, что окно графика используется повторно. Я думаю, что это сделано специально для того, чтобы избавить пользователя от необходимости очищать каждый график, созданный после его просмотра.
Способ обойти это - использовать объектно-ориентированный аспект J, чтобы каждое окно обрабатывалось как отдельный объект. Рик Шерлок дает хорошее описание этого на 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
и после того, как вы закроете окна, очистите локали, которые поддерживают объекты с
codestroy__a ''
1
codestroy__b ''
1
Объектно-ориентированное программирование хорошо изучено в лабораториях J, и если вы не знакомы с ним, стоит взглянуть на технические детали приведенного выше кода.