Это очень просто: .*\S.*
Для этого требуется один непространственный символ в любом месте. Синтаксис регулярного выражения предназначен для регулярных выражений, совместимых с Perl 5, если у вас есть другой язык, синтаксис может немного отличаться.
Вы можете использовать эстетику linetype
, чтобы сделать отдельную легенду для горизонтальных линий, а не добавлять их в существующую легенду.
Для этого мы можем перемещать linetype
внутри aes
, пока сохраняем отображение в константу. Я использовал ваши нужные ярлыки как константу. Имя легенды и используемый тип линии можно установить в scale_linetype_manual
. Я удаляю show.legend = TRUE
, чтобы строки остались в другой легенде. Цвета легенды фиксированы в override.aes
.
I + geom_hline(aes(yintercept= 10, linetype = "NRW limit"), colour= 'red') +
geom_hline(aes(yintercept= 75.5, linetype = "Geochemical atlas limit"), colour= 'blue') +
scale_linetype_manual(name = "limit", values = c(2, 2),
guide = guide_legend(override.aes = list(color = c("blue", "red"))))
theme
. – aosmith 13 April 2018 в 14:49values
, где я выбрал, как выглядели строки («тип линии»). Вам нужно указать столько значений, сколько у вас есть. В моем примере я выбрал два одинаковых типа, поэтому все строки выглядят одинаково; если у вас было три строки, вам понадобится три типа линий вvalues
. См. здесь для информации о типах линий, которые вы можете выбрать. – aosmith 11 June 2018 в 20:50