Я запускаю программу, которая использует подпрограмму для gnuplot. Я запускаю скрипт и должен просматривать результирующий график в режиме реального времени.
Внутри do l oop команда заговора будет появляться, скажем, 100 раз. Из-за этого я получаю 100 отдельных gnuplot windows, содержащих график.
Программа похожа на
do i=1,100
...
...
call plota1(x,y)
end do
Есть ли такой способ, что я не получаю такие 100 графиков, только один и, скажем, когда (i + 1) -й график появится, он появится в том же окне gnuplot, заменив i-й график?
Используемая подпрограмма построения графика выглядит следующим образом.
subroutine plota1(x,y)
real*8::x(:),y(:)
integer l,u,i
l=lbound(x(:),dim=1)
u=ubound(x(:),dim=1)
open(1,file="p.dat")
open(2,file="p.plt")
do i=l,u
write(1,*) x(i),y(i)
end do
write(2,*) "p 'p.dat' u 1:2 w l"
call execute_command_line('gnuplot -p p.plt')
close(1,status='delete')
close(2,status='delete')
end subroutine plota1
Команда построения графика происходит из строки "write (2, *)" p 'p.dat' u 1: 2 wl "". Что я должен добавить туда, чтобы получить желаемый результат? Если нет никакой возможности, советы по использованию какого-либо другого программного обеспечения также будут полезны.