如何在建立條形圖時處理錯誤“'height'必須是向量或矩陣”?


在建立條形圖時出現錯誤“'height'必須是向量或矩陣”是因為我們提供了資料框名稱而不是列名稱,或者使用 as.matrix 讀取它。如果我們想要為資料框中的列建立條形圖,則需要將資料框讀取為矩陣。

例如,如果我們有一個名為 df 的資料框,則可以透過使用以下命令建立 df 中列的條形圖:

barplot(as.matrix(df))

示例

以下程式碼片段建立了一個示例資料框:

df<-data.frame(x=rpois(20,2),y=rpois(20,5))
df

建立了以下資料框

    x y
1  2 10
2  2 3
3  1 6
4  2 6
5  4 4
6  2 5
7  3 4
8  2 4
9  2 9
10 3 5
11 3 4
12 2 2
13 1 4
14 2 6
15 1 8
16 2 2
17 4 1
18 1 5
19 4 4
20 2 9

要在上面建立的資料框上使用資料框名稱建立條形圖,請將以下程式碼新增到上述程式碼片段中:

df<-data.frame(x=rpois(20,2),y=rpois(20,5))
barplot(df)
Error in barplot.default(df) : 'height' must be a vector or a matrix

建立條形圖的正確方法如下:

df<-data.frame(x=rpois(20,2),y=rpois(20,5))
barplot(as.matrix(df))

輸出

如果將以上所有程式碼片段作為單個程式執行,則會生成以下輸出:

更新於: 2021年11月3日

3K+ 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.