2015-07-11 53 views
0

考慮以下功能:是否有可能在R鍵覆蓋由expand_limits()設置的值

plotSmth <- function(...) ggplot2::ggplot(...) + 
    expand_limits(x =c(0), y =0) 

是否有可能會覆蓋的plotSmth

expand_limits()我試過的東西設置的值像:

plotSmth(thisIsData, aes(x=xhere, y=yhere, colour=as.factor(foo), lty=as.factor(bar) ) ) + 
    expand_limits(x=c(10), y=c(0, 25)) 

,但它仍然沒有覆蓋0在的x軸組的expand_limits()

有沒有辦法做到這一點?

+2

可以請你提供[再現的示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example/5963610)與樣本的輸入數據並清楚描述期望的輸出是什麼? – MrFlick

回答

1

expand_limitsexpand_limits添加了一個虛擬圖層和數據來展開座標軸,所以您無法輕鬆地將其撤消。三個選項浮現在腦海中:

  1. plotSmth使用expand_limits,也許xlim()/ylim()會做的工作,而是和那些可以復位;
  2. 用例如coord_cartesian();
  3. 刪除虛擬層

p = qplot(1:2,1:2) + expand_limits(x=-1e3) 
p 
p$layers[2] <- NULL 
p 
相關問題