Легенда - это подпись к рядам данных на графике, которая позволяет понять, к каким данным относится одна зависимость, а к каким - другая. Gnuplot называет легенды словом key, а не legend, и это нужно учитывать.
Как убрать легенду с графика?
Есть два способа. Первый: задать значение
gnuplot> set nokeyили можно указать параметр notitle при построении графика, например так:
gnuplot> plot f(x) notitle, "file.dat" title "data"После этого в графике легенда отображаться не будет.
Как изменить положение легенды на графике?
Обычно легенда отрисовывается в правом верхнем углу графика. Изменить это можно при помощи команд:
gnuplot> set key bottom left
gnuplot> set key bottom right
gnuplot> set key top left
gnuplot> set key top right
Здесь перечислены варианты, позволяющие отрисовывать легенду в левом нижнем, правом нижнем, левом верхнем и правом верхнем углу графика соответственно. Так же можно попросить gnuplot рисовать легенду за пределами графика - для этого следует добавить параметр outside, или под графиком - для этого есть параметр bottom. Например:
gnuplot> set key outside bottom
Так же можно задать положение легенды с помощью координат, хотя это менее гибкий способ. Если хотите сдвинуть легенду в положение (X,Y)=(100,100), даём команду:
gnuplot> set key 100,100
Координата (100,100) это позиция точки между текстом и линией/символом первой линии легенды. Координаты задаются по осям X и Y.
Как избавиться от отображения погрешностей в легенде?
Когда один из рядов данных имеет погрешности, они тоже отображаются в легенде (например, на рисунке ниже). Даже тогда, когда погрешности по оси Y, они отображаются в легенде горизонтально, и это не нужно.
# X Y Y-погрешность
1.0 1.2 0.2
2.0 1.8 0.3
3.0 1.6 0.2
Строим график:
gnuplot> set xrange [0:4]
gnuplot> set yrange [0:3]
gnuplot> plot "test.dat" usi 1:2:3 title "data" w yerrorbars

и данные о погрешностях отображаются так, как показано на верхнем рисунке.
Может быть, не очень изящный приём:
gnuplot> set xrange [0:4]Но работает хорошо.
gnuplot> set yrange [0:3]
gnuplot> plot "test.dat" usi 1:2:3 notitle w yerrorbars 1,\
"test.dat" usi 1:2 title "data" w points 1

Как изменить межстрочный интервал в легенде?
Это можно сделать при помощи команды set key spacing.
Например, чтобы сделать полуторный межстрочный интервал в легенде, нужно:
gnuplot> set key spacing 1.5Это увеличит расстояние между строками в легенде.
Как сделать рамку вокруг легенды?
Чтобы вокруг легенды появилась рамка, следует использовать set key box.
Тип линии рамки будет тот же, что вокруг самого графика. Изменить это можно так:
gnuplot> set style line 1 lt 2 lw 3Таким образом, вокруг легенды появится рамка.
gnuplot> set key box linestyle 1
7 комментариев: |высказаться!| RSS-лента дискуссии.|
Я вот такой сайтец раскопал по этому вопросу , каогда нужно было использовать покет http://t16web.lanl.gov/Kawano/gnuplot/index-e.html
Расскажите пожалуйста про надписи на русском языке с utf8
2 PampKin Head пишет...
Я вот такой сайтец раскопал по этому вопросу
Дык, я ж писал в предыдущем посте - мои рассказы основаны на том сайте. :-)
Ресурс очень классный, но давно не обновлялся и на русский перевода нет.
2 Анонимный пишет...
Расскажите пожалуйста про надписи на русском языке с utf8
Народ ставит гнуплот 4.3, а у меня 4.0 и кои8, поэтому никаких проблем у меня нет. Я сторонник поговорки "лучшее - враг хорошего".
Проблемы с PNG и русскими буквами под Windows. set encoding koi8r помогает только для postscript терминала. Может быть знаете как решить проблему?
подскажите можно ли в ручную устанавливать размер рамки вокруг легенды?
Спасибо Вам за Ваши статьи!
как вывести легенду над графиком (т.е. чтобы график её не пересекал)?
Отправить комментарий