Вы можете использовать внешний инструмент, такой как pygrace , или использовать встроенные возможности Grace. Они были затронуты здесь, в SO ранее (см., Например, здесь или здесь ).
Следующий скрипт отображает файл данных (exp.dat
) как пустые кружки, другой файл данных (line.dat
) в виде красной пунктирной линии и устанавливает диапазоны, метки и основные отметки двух осей:
READ NXY "exp.dat"
READ NXY "line.dat"
WORLD XMIN 0
WORLD XMAX 5
WORLD YMIN 1
WORLD YMAX 5
xaxis label "My x label"
xaxis tick major 1
yaxis label "My y label"
yaxis tick major 1
s0 line type 0
s0 symbol 1
s0 symbol size 1.5
s1 linestyle 2
s1 color 2
Для создания вертикальной красной пунктирной линии, проходящей через 2.2 содержимое line.dat
должно быть примерно таким:
2.2 0
2.2 10000
Такой файл можно создать в сценарии bash с помощью следующей команды:
echo "2.2 0\n2.2 10000" > line.dat
Сохранить сценарий как mybatch.xmg
и назовите его так:
xmgrace -batch mybatch.xmg
Если вы хотите напрямую сгенерировать вывод, вы можете добавить эту директиву:
PRINT TO "myplot.eps"
DEVICE "EPS" OP "level2"
PRINT
, которая сохранит ваш график как myplot.eps
( добавьте -nosafe
при вызове xmgrace
, чтобы избавиться от предупреждений).