2013-08-29 149 views
0

我想縮小我的繪圖的寬度。換句話說,我期望減少x軸上的刻度之間的空間,以便圖上的點彼此靠得更近。我希望這條線在X軸上更加「壓縮」。有沒有辦法做到這一點?使用plot中的縮小繪圖區域()R

這裏是我當前標代碼:

plot(ret.bull, type = "l", xlab = "Time", ylab = "Return", xaxt = "n") 
abline(a = mean(ret.bull), b = 0, lty = 2) 

enter image description here

我想在這些行的東西:

enter image description here 謝謝

+0

更改軸限制或繪圖寬度。 – Roland

+0

更改寬度不是解決方案,因爲它只會使窗口圖更小。我想離開這個窗口,但縮小圖表。減少xlim不起作用,因爲它會將數據限制在您設定的限制範圍內。我想要的是減少蜱之間的空間(距離)。 – Mayou

+0

由於您使用不同的數據顯示兩張圖,並且希望第一張圖看起來像第二張圖,因此不清楚您想要什麼,但是如果不更改數據,這是不可能的。 – Roland

回答

2

你可以改變的方面通過將asp參數設置爲繪圖函數來計算比率。您也可以打開你的圖形設備,在你使用像希望的任何尺寸(這麼小的寬度):

dev.new(width=4, height=6) 

或者,你可以做一個邊緣的大,以減少對劇情的空間:

par(mar=c(5,4,2,10)+0.1) 

TeachingDemos軟件包中的另一個squishplot函數是另一種改變縱橫比的方法(並且在頁邊空白處放置空白空間,而不是在繪圖區域內留下大量空白空間)。

+0

謝謝Greg。但很抱歉,改變寬度並不能解決我的問題。我不想有一個壓縮圖形的小窗口。我想保留一箇中等大小的窗口,但是要減少x軸刻度之間的空間(距離),以便圖更加「擠壓」。 – Mayou

+0

@Mariam,你看過'asp'或'squishplot'選項嗎? –

+0

剛剛做到了。謝謝!完美的作品。 – Mayou

2

正如羅蘭所說,你只需要設置你的xlim。垂直繪製單個矢量,默認xlim爲c(1, length(ret.bull)。您可能想要類似

ret.bull <- rnorm(100) ## for reproducibility 
plot(ret.bull, type = "l", xlim = c(-length(ret.bull), 2*length(ret.bull)))