2 回答

TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
不用設(shè)置colour和fill,而是使用幾何美學(xué)來 映射它們aes,然后使用scale_xxx_manual或scale_xxx_identity。
例如
ggplot()+geom_ribbon(data=ribbon,aes(ymin=min,ymax=max,x=x.ribbon,fill='lightgreen'))+
geom_line(data=ribbon,aes(x=x.ribbon,y=avg,color='black'))+
geom_line(data=data,aes(x=x,y=new.data,color='red'))+
xlab('x')+ylab('density') +
scale_fill_identity(name = 'the fill', guide = 'legend',labels = c('m1')) +
scale_colour_manual(name = 'the colour',
values =c('black'='black','red'='red'), labels = c('c2','c1')
請(qǐng)注意,您必須指定guide = 'legend'強(qiáng)制scale_..._identity生成圖例。
scale_...manual您可以為值傳遞命名向量-名稱應(yīng)為調(diào)用中的顏色geom_...,然后可以很好地標(biāo)記。
)

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊
順便說一句,為進(jìn)一步澄清,我會(huì)說:geom_line(aes(..., color = 'a')...)
然后scale_color_manual(..., values = c('a' = 'black', ...))
。這樣一來,很明顯,其中的字符串aes(color = 'string')
只是一個(gè)綁定,實(shí)際顏色將是您在中定義的顏色scale_color_manual()
。
- 2 回答
- 0 關(guān)注
- 615 瀏覽
添加回答
舉報(bào)