2016-04-02 2 views
-1

я изобразил следующий сюжет:Как изменить тип линии в сказанию ggplot

enter image description here

Используя код:

ggplot(decadevalue, aes(decade,group=1))+ 
geom_line(aes(y=decadevalue[,1],colour="black"),size=1.5,linetype = "dashed")+ 
geom_line(aes(y=decadevalue[,2],colour="#E69F00"),size=1.5,linetype = "twodash")+ 
geom_line(aes(y=decadevalue[,3],colour="#56B4E9"),size=1.5)+ 
geom_line(aes(y=decadevalue[,4],colour="#009E73"),size=1.5)+ 
geom_line(aes(y=decadevalue[,5],colour="#F0E442"),size=1.5)+ 
geom_line(aes(y=decadevalue[,6],colour="#0072B2"),size=1.5)+ 
geom_line(aes(y=decadevalue[,7],colour="#D55E00"),size=1.5)+ 
geom_line(aes(y=decadevalue[,8],colour="#CC79A7"),size=1.5)+ 
geom_line(aes(y=decadevalue[,9],colour="#000000"),size=1.5)+ 
geom_line(aes(y=decadevalue[,10],colour="#CC6666"),size=1.5,linetype = "dotted")+ 
ggtitle("Plot of Percentage of Motivations by Decade")+ 
xlab("Decade")+ ylab("Percentage")+ 
scale_colour_discrete(name="",labels=c(MI[9],MI[6],MI[4],MI[3],MI[10],MI[8],MI[7],MI[2],MI[5],MI[1]))+ 
scale_linetype_discrete(limits = c(rep("solid", 4),"dotted",rep("solid",2),"twodash","solid","dashed"))+ 
theme(axis.text.x = element_text(angle = 45, hjust = 1)) 

Кто-нибудь знает, как изменить соответствующую строку типы в легенде?

+0

Вы, вероятно, будет легче 'reshape' /' melt' ваши данные, а затем отобразить в результате переменных в 'colour' и' linetype' эстетики. Затем соответствующая легенда будет автоматически сгенерирована. – user20650

+0

см. Http://stackoverflow.com/questions/3777174/plotting-two-variables-as-lines-using-ggplot2-on-the-same-graph#3777592, http://stackoverflow.com/questions/23420961/ черчения-множественные линии-из-а-данных-кадры с-ggplot2 – user20650

ответ

0

Вы можете использовать scale_linetype_manual

scale_linetype_manual(values=c(1,1,1,1,2,3,2,3))+ 
... 
... 
Смежные вопросы