2011-09-23 116 views
6

我想在標記之間放置x軸標籤。在週期標記之間放置x軸標籤

例如,默認情況下,[R產生類似如下的圖表: (注意,我說axis(1,c(2001,2002,2003,2004,2005,2006,2007,2008,2009,2010))給的標籤年用量較大,否則[R只使用2002 2004 2006 2008 2010爲標籤) enter image description here

但我想移動標籤,使情節看起來像這樣: enter image description here

我試過看,但我甚至不知道它是什麼叫做這個。

+1

這將有助於瞭解x值的存儲方式。整型?日期?日期時間? – joran

+0

x值被存儲爲一個ts()函數。 – OSlOlSO

回答

14

您可以通過單獨致電axis來抵消標籤和刻度。

(下面的例子看起來並不像你的數據,但這個想法是一樣的。)

情節什麼的,但保持軸關閉。

plot(1:10, axes = FALSE) 

以半間距偏移繪製標籤並關閉刻度。 (反轉數字只是爲了「有趣」)。

axis(1, at = (1:10) + 0.5, labels = 10:1, tick = FALSE) 

將滴答滴回正常位置,並關閉標籤。添加一個框來完成這項工作。

但要小心,標籤現在有點模棱兩可,它們指的是哪個刻度,以及刻度位置實際上是什麼(儘管一年的開始和結束應該不是問題)。

axis(1, at = (1:10), labels = FALSE, tick = TRUE) 
box() 

offset labels from ticks

您可以使用axis(2, ...)構建y軸以同樣的方式,或者僅使用默認值與axis(2)