2010-09-28 30 views
2

你好友電腦的人,清理R中的一個barplot

我是R的新手,在設置劇情參數的廣闊世界中有點迷茫。目前我有一個barplot,looks like this。我的主要問題是清理圖表,使每個欄與一個類別相關聯。現在,字體被設置爲重疊並且不顯示所有類別。

換句話說,我想:

  1. 有酒吧的名字閱讀水平。
  2. 設置字體參數,以便顯示每個類別,即每個欄都有一個名稱。也許這涉及縮小字體大小?

任何有關此事的幫助將不勝感激!

謝謝:)

回答

4

編輯:ucfagls包括非常好的建議。謝謝!

查看選項las面值和cex.names在barplot:??

# Sample dataset 
x <- rpois(10,20) 
names(x) <- replicate(10, 
    paste(sample(LETTERS[1:10],10),collapse="") 
) 

# Demonstration of the options 
op <- par(mar = c(5,6,4,2) + 0.1) 
barplot(x,horiz=T,las=1,cex.names=0.5) 
par(op) 

給出:

alt text

使用選項lascex.names所以調整自己的代碼。同時檢查幫助頁面中的mar選項以瞭解如何在標籤脫落的情況下調整值。

+0

謝謝Joris。我假設x表示數據幀,不是嗎?此外,這似乎消除酒吧和重新命名與字母,我都不想。有沒有辦法做到這一點,同時保持當前名稱和所有數據,即酒吧? – 2010-09-28 11:00:29

+0

@Eric:這只是示例數據,可以告訴你它是如何工作的。你應該做的唯一事情就是使用las = 1和cex.names = 0.5(或者你認爲合適的另一個值)。其餘的只是讓你可以運行代碼。 – 2010-09-28 11:19:25

+1

@Eric;您也可能(可能)需要在圖的左側邊緣添加一些額外的空間以容納標籤。你需要在'barplot()'調用**和**之後重置之前這樣做。所以在** barplot(....)',**和**'par(op)之前添加'op < - par(mar = c(5,6,4,2)+ 0.1)在** barplot(....)之後**。如果你增加繪圖設備(窗口)的垂直高度,你可以在不使條形標籤變小的情況下離開(即你可以省略Joris代碼的'cex.names = 0.5'位) 。 – 2010-09-28 11:39:49