2017-04-09 121 views
0

我嘗試將座標軸添加到位圖圖R中,但未顯示這些座標軸。我使用的OS X 10.10有R 3.3.0在R中顯示位圖中的座標軸和縮放位圖圖

set.seed(0) 

#Sample matrix 
bitmap<-matrix(rnorm(150000,mean=1:500),nrow = 300, ncol = 500) 

image(bitmap,col = RColorBrewer::brewer.pal(9,"Greys"), axes=FALSE, 
    useRaster = TRUE) 

axis(1,at = seq(from=1000,to = 10000,length.out = 19), 
    labels = seq(from=1000,to = 10000,length.out = 19)) 

axis(2,at = seq(from=0,to = 100,length.out = 11), 
    labels = seq(from=0,to = 100,length.out = 11)) 
  1. 如何顯示與R中要求的範圍,這些所需的軸?

  2. 如何指定R中繪製的位圖的大小,無論是以像素還是以某個長度單位?

  3. 如何獨立縮放位圖的寬度和高度?

  4. 有沒有其他的R軟件包可以讓我更好地處理這些參數?

回答

1

image()秤兩軸爲1。你只需要調整您的at=

axis(1,at = seq(from=1000,to = 10000,length.out = 19)/10000, 
    labels = seq(from=1000,to = 10000,length.out = 19)) 

axis(2,at = seq(from=0,to = 100,length.out = 11)/100, 
    labels = seq(from=0,to = 100,length.out = 11)) 

渲染圖像的大小是根據您當前的圖形設備上。您不能以像素爲單位顯式控制繪圖區域的大小,只能繪製整體繪圖大小(使用座標軸和所有內容)。 R中的圖形傾向於根據窗口大小增長和縮小。如果您在plot()調用中喜歡asp=1,則可以修復寬高比。

如果您需要像素級控制,您可能需要使用其他一些程序進行繪圖。

+0

謝謝!你的回覆已經回答了我的問題。我不知道* at *的範圍是從0到1。 – addy