2012-10-12 29 views
0

當我嘗試使用下面的函數時,我注意到我的頂行缺少圖中的水平線。我已經把它跟蹤到指定我的矩形尺寸的那一行,具體來說應該是多高和多低。是否有我可以設置的參數,以便頂線始終顯示?下面的代碼沒有頂行..在某些參數下,rect函數不顯示頂部邊框

Plot.Lines <- function(colCount, rowCount, cex){ 
    colCount <- colCount # number per row 
    rowCount <- rowCount 

    plot(c(1,colCount), c(0,rowCount), type="n", ylab="", xlab="", 
     axes=FALSE, ylim=c(rowCount,0)) 
    title("My Lines") 

    for (j in 0:(rowCount-1)) 
    { 
    base <- j*colCount 
    remaining <- length(colors()) - base 
    RowSize <- ifelse(remaining < colCount, remaining, colCount) 
    for(i in 1:RowSize){ 
     rect(i-0.5,j-0.5,i+0.5, j+0.5, border = "black", col = colors()[base + (1:RowSize)]) 
    } 
    for(i in 1:RowSize){ 
     text(x = i, y =j, labels = paste(base + i), cex =cex, col = "black") 
    } 
    } 
} 

Plot.Lines(25, 6, cex = 0.5) 

但是,如果我行更改爲:

rect(i-0.5,j-0.2,i+0.5, j+0.2, border = "black", col = colors()[base + (1:RowSize)]) 

那麼它的作品,雖然有各行之間的空間。有沒有辦法讓我自動給出colCount和rowCount?

回答

2

頂邊被切掉,因爲它超出了繪圖區域。您可以使用par(xpd=TRUE)來允許在內部區域之外進行繪圖。在您致電plot之前,先將此信息發送給我們。