ОБНОВЛЕНИЕ
Вот решение с mtcars
.
data("mtcars")
ggplot( data = mtcars) +
geom_line(aes(gear, mpg, linetype = "mpg"), color = "royalblue", size = 0.7 ) +
geom_line(aes(gear, drat, linetype = "drat" ), color = "royalblue", size = 0.7 ) +
geom_line(aes(gear, qsec, linetype = "qsec" ), color = "royalblue", size = 0.7 )+
xlab("gear") + ylab("Outcomes") +
scale_linetype_manual( name = "Legend text",
values = c( "mpg" = "solid",
"drat" = "dashed",
"qsec" = "twodash" ) ) +
theme_minimal() +
theme(axis.text.x=element_text(angle=60, hjust=1))
Для вашего примера я бы сделал следующее. Чтобы настроить linetype
, вы должны использовать scale_linetype_manual()
. Аргумент name
предназначен для заголовка легенды, тогда как values
управляет типом линии, вызывая имена, которые вы использовали в оригинале aes()
в geom_line()
.
ggplot( data = datapop)+
geom_line(aes(Year, OECD, linetype = "OECD" ), color = "royalblue", size = 0.7 ) +
geom_line(aes(Year, World, linetype = "World" ), color = "royalblue", size = 0.7 ) +
geom_line(aes(Year, Switzerland, linetype = "Switzerland" ), color = "royalblue", size = 0.7 ) +
xlab("Year") + ylab("Aging") +
scale_color_manual( name = "Legend text",
values = c( "OECD" = "solid",
"World" = "dashed",
"Switzerland" = "twodash" ) ) +
theme_minimal() +
theme(axis.text.x=element_text(angle=60, hjust=1))
Это то, как вы должны делайте это без использования какого-либо другого пакета, а не ggplot2 .
Теперь выглядит лучше?