GNUPLOT

-не так Часто Задаваемые Вопросы-

обновлено 2010/12/26

Разное (No.4)

1 | 2 | 3 | 4

Как сделать изображение с большим количество типов линий?

Количество видов линий в gnuplot зависит от терминала. Линии в графике можно различать по:

  Типу линий (сплошная, пунктирная, штрих-пунктирная)
  Толщина (толстая, тонкая)
  Цвет
  Линии с символами

Некоторые терминалы не могут нарисовать пунктирную линию, некоторые не могут изменять толщину. Тогда число возможных комбинаций ограничено. Следующие примеры заключаются в использовании нескольких видов линий в терминале postscript.

Команда set linestyle определяет тип линий. В gnuplot ver.4, используется команда set style line. Здесь используются линии 4 типов: сплошная, штриховая, пунктирная и штрих-пунктирная. Идентификаторы 1, 2, 3 и 6 обозначают эти типы в терминале postscript. Толстые линии (толщиной 3) и тонкие (толщиной 1). В итоге получаем линии 8 видов.

gnuplot> set term postscript eps enhanced
gnuplot> set linestyle 1 lt 1 lw 1
gnuplot> set linestyle 2 lt 2 lw 1 
gnuplot> set linestyle 3 lt 3 lw 1 
gnuplot> set linestyle 4 lt 6 lw 1 
gnuplot> set linestyle 5 lt 1 lw 3 
gnuplot> set linestyle 6 lt 2 lw 3 
gnuplot> set linestyle 7 lt 3 lw 3 
gnuplot> set linestyle 8 lt 6 lw 3
gnuplot> set xrange [-pi:pi]
gnuplot> plot sin(  x) w l ls 1, sin(2*x) w l ls 2, \
              sin(3*x) w l ls 3, sin(4*x) w l ls 4, \
              cos(  x) w l ls 5, cos(2*x) w l ls 6, \
              cos(3*x) w l ls 7, cos(4*x) w l ls 8
fig/sample9.6a

Есть возможность использовать больше типов линий, путем изменения типа линий (короткая штриховая, длинная штриховая и т.д.), но другие линии, за исключением тех 4 типов, выразить тяжелее. Лучше избегать использование нескольких видов толщины, потому что они неразличимы в маленьких изображениях.

Максимальное значение видов линий может зависеть от внешнего вида фигуры. Фактически, использовать более 10 типов линий невозможно. Если действительно есть необходимость использовать больше типов линий, тогда используются цвета.

fig/sample9.6b

"Линии с символами" – это линия, полностью покрытая символами. Символы, которые можно использовать: круги, треугольники, квадраты и т.д.

gnuplot> set linestyle 1 lt 1 lw 3 pt 5
gnuplot> set linestyle 2 lt 1 lw 3 pt 6

Linestyles, показанный выше, используется для построения plot sin(x) w linespoints ls 1. С помощью этого символа иногда бывает трудно контролировать интервал каждого символа. При построении фигуры символы расположены на точках данных, а каждая точка данных связанна с прямой линией. В этом случае, график функции - это символы, расположенные на фиксированном интервале, который определяется set sampling.

up

Вывод среднеквадратичных значений параметров на рисунок.

Создайте фигуру со значениями параметров, полученных среднеквадратичным приближением. Сначала используем команду fit, чтобы получить решение, и в опции set label "A=%g",a заменяйте значение "a".

gnuplot> f(x)=a*x*x+b*x+c
gnuplot> fit f(x) 'test.dat' using 1:2:3 via a,b,c
gnuplot> set label 1 "Y=AX^2+BX+C" at 11,1225
gnuplot> set label 2 "A = %g", a at 12,1200
gnuplot> set label 3 "B = %g", b at 12,1180
gnuplot> set label 4 "C = %g", c at 12,1160
gnuplot> plot f(x),'test.dat' using 1:2:3 with yerr
fig/sample9.7
from Joerg in Switzerland. Thanks !
up