Установить собственный цвет фона для ключа в Gnuplot - PullRequest
0 голосов
/ 27 октября 2019

Я пытаюсь построить что-то вроде этого:

set key top left box opaque
set border back
plot sin(x)

, но я хочу, чтобы ключ имел цвет фона, отличный от остальной части графика. Например, если график белый, я хочу, чтобы у ключа был серый фон. Или что-то типа того.

Я относительно новичок в Gnuplot, но я посмотрел в руководстве, и, кажется, нет прямого способа сделать это.

Может кто-нибудь предложить решение?

Спасибо.

1 Ответ

0 голосов
/ 27 октября 2019

Да, если вы отметите help key, кажется, что нет возможности установить цвет фона поля ключа.

Обходной путь может быть следующим: С opaque поле ключа будетбыть заполненным цветом фона. Таким образом, «хитрость» состоит в том, чтобы изменить цвет фона терминала на желаемый цвет блока клавиш, а затем добавить, например, белый прямоугольник, охватывающий весь экран. Не забудьте использовать опцию behind. Кроме того, чтобы избежать остаточной линии на границе экрана, установите координаты прямоугольника от -0.1,-0.1 до 1.1,1.1. Работает с терминалом wxt. Вам необходимо проверить, работает ли это также с другими терминалами.

Код:

### key background
reset session

set term wxt background rgb "grey"

set object 1 rectangle from screen -0.1,-0.1 to screen 1.1,1.1 fc rgb "white" behind
set key opaque font ",12"

plot sin(x), cos(x)
### end of code

Результат:

enter image description here

Дополнение:

@ johnymm, для меня это также отлично работает с терминалом pdfcairo.

### key background
reset session

set term pdfcairo background rgb "grey"
set output "KeyBackground.pdf"

set style rect fc rgb "white" fs noborder
set object 1 rectangle from screen 0,0 to screen 1,1 behind

set key opaque font ",12"

plot sin(x), cos(x)
set output
### end of code
...