принести легенду на фронт в gnuplot - PullRequest
6 голосов
/ 21 марта 2012

Есть ли способ перенести ключ (легенду) в gnuplot (терминал epslatex) на самый передний план?В моем сюжете я вижу, что некоторые заполненные кривые находятся на верхушке небольших отрезков ключа, поэтому они невидимы.Этикетки на ключе расположены сверху, так как они нарисованы латексом.Я знаю, что могу изменить порядок на графике (сначала закрашенные кривые), но я действительно хочу, чтобы закрашенные кривые скрывали ранее нарисованные линии на самом графике.

Ответы [ 3 ]

13 голосов
/ 14 апреля 2012

Последние версии gnuplot позволяют вам сказать «set key opaque», что, я думаю, делает то, что вы хотите.

1 голос
/ 22 марта 2012

Сначала нанесите на график ваши линии без ключа plot x notitle ls 1, затем нарисуйте заполненные кривые, затем нанесите еще дополнительные линии, используя стили линий первых линий, но так, чтобы они находились вне видимой области:

set yrange [-10:10]
plot -x notitle ls 2, x**2/3-5 w filledc ls 5, x**2+100 t "first-line legend" ls 2 

Это дает вам легенду наверху заполненных кривых, но видимые линии ниже.Надеюсь, что это работает и с epslatex.

0 голосов
/ 25 июня 2019

@ Ответ sfeam правильный, если ключ не перекрывается с границей. Если это так, нет никакой возможности перенести легенду перед границы, но вы можете перенести границу назад с помощью "set border back".

Таким образом, комбинация «set key opaque» и «set border back» гарантирует, что легенда превыше всего.

...