2017-02-14 33 views
0

我已經生成的情節這段代碼正常工作:錯誤coord_flip()不coord_cartesian()和geom_errorbar()

df <- data.frame(x = c("Male", "Female"),y = c(5, 6), error = c(1, 10)) 
ggplot(df,aes(x=x, y=y, ymax=y+error, ymin=y-error))+ 
geom_errorbar(width=.15)+ 
coord_cartesian(ylim=c(0,10))+ 
geom_point(shape=22, size=3, fill="red")+ 
coord_flip()+ 
theme_bw(20) 

enter image description here 據報道,coord_cartesian()似乎這麼想的與coord_flip()正常工作。事實上評論:

#coord_flip()+ 

中生成以下:

enter image description here

我怎麼能解決這個問題呢?

+0

使用'+ ylim(...)'而不是'+ coord_cartesian(ylim = ...)'?否則使用'ggstance :: geom_errorbarh'而不是'coord_flip()'。 – Axeman

+0

或者將'ylim'提供給'coord_flip()',因爲幫助中說:_「'...': 傳遞到'coord_cartesian'' _的其他參數。 – Axeman

回答

1

就像@Axeman在他/她的評論中所說的,如果你在你的ggplot對象中包含coord_flip(ylim=c(0,10),你將會在你的問題中得到第二個座標翻轉的圖。事實上,你甚至不需要coord_cartesian --the下面的代碼...

ggplot(df,aes(x=x, y=y, ymax=y+error, ymin=y-error))+ 
geom_errorbar(width=.15)+ 
geom_point(shape=22, size=3, fill="red")+ 
coord_flip(ylim = c(0,10))+ 
theme_bw(20) 

...產生這樣的情節:

enter image description here

相關問題