Date Редакция Категория sci Теги gnuplot / графика

Блоки данных, разделённые пустой строкой, изображаются на графике отдельными кривыми

# data1.dat
# X   Y
  1   2
  2   3

  3   2
  4   1
plot 'data1.dat' with linespoints pt 7 

blocks1.png

Если вы хотите нарисовать каждую кривую своим стилем, вставьте между блоками ещё одну пустую строку.

# data2.dat
# X   Y
  1   2
  2   3


  3   2
  4   1

Доступ к нужной кривой можно получить с помощью команды index. Индексация блоков начинается с нуля:

plot 'data2.dat' index 0 with linespoints pt 7 lc 1, \
              '' index 1 with linespoints pt 7 lc 2

blocks2.png

Последовательно выводя блоки данных в GIF-файл можно создать анимацию.

# data3.dat
# X   Y
  1   2
  2   3


  2   3
  3   2


  3   2
  4   1


  4   1
  3   0

Размеры xrange, yrange надо зафиксировать, чтобы избежать автоматического масштабирования графика и сопутствующего "прыгания" кадров. Функция animate и задержка между кадрами delay (измеряется в 1/100 с) устанавливается в терминале gif. Вывод (output) выполняется в файл animate.gif:

set term gif animate delay 100
set output "animate.gif"
set yrange [0:4]
set xrange [0:4]
do for [i=0:3] {
    plot 'data3.dat' index i with linespoints pt 7
}

animate.gif



Комментарии

comments powered by Disqus