2012-07-22 99 views
3

收縮y軸可能嗎?我的意思是,而不是陰謀正方形,我想它是長方形,y軸縮小。收縮y軸寬度

library(ggplot2) 
data = data.frame(rnorm(10000)) 
colnames(data) = "numOfX" 
m <- ggplot(data, aes(x=numOfX)) 
m + geom_histogram(colour = "blue", fill = "white", binwidth = 0.5) 
+0

您可以通過指定'width'並保存你想在任何尺寸的圖像'height'在'ggsave'參數。 – joran 2012-07-22 22:51:43

回答

6
last_plot() + opts(aspect.ratio=1/10) 
+0

這也很好。謝謝 – learner 2012-07-22 23:07:05

3

您可以通過添加調整邊距下面你的代碼的最後一行:

+ opts(plot.margin = unit(c(1,1,10,1), "lines")) 

的數字是行數添加到保證金的順序C(頂部,右,底,左)。

更新: baptiste和我討論的方法將改變圖本身的大小,但不改變繪圖區的大小。只是爲了完整性,如果您想要更改繪圖的縱橫比,但仍然會填充整個繪圖區域,則需要更改繪圖區域本身的大小。

在Mac上,您可以執行quartz(width=w, height=h),寬度和高度以英寸爲單位。這將打開指定大小的繪圖窗口。然後運行您的原始代碼(無邊距或寬高比變化)。這將爲您提供任何您希望的繪圖大小,並且繪圖將填滿繪圖區域。完成後,您可以使用dev.off()來關閉Quartz窗口。

您可以在Windows中使用this Stack Overflow answer做同樣的事情。

最後,如果你使用RStudio,你可以做出口 - >複製到剪貼板,然後手動調整寬高比。

當然,你可以用我或巴蒂斯特的原始答案的組合與上面的方法一起控制繪圖區的大小和邊緣的同時大小。

+0

顯示以下錯誤:在結構上的錯誤(列表(...),CLASS =「選項」): 找不到功能「單位」 – learner 2012-07-22 22:57:20

+1

負荷運作良好格包 – baptiste 2012-07-22 22:59:00

+0

。謝謝 – learner 2012-07-22 23:03:01