2016-04-24 9 views
-2

データの棒グラフをCSVファイルで作成しようとしていました。私はこのエラーを解決することができませんでした-0.01 *高さ:2進演算子の非数値引数

topics <- read.csv("test.csv") 
data <- structure(list(T1= as.numeric(topics$T1), 
         T2 = as.numeric(topics$T2), 
         T3 = as.numeric(topics$T3), 
         T4 = as.numeric(topics$T4), 
         T5 = as.numeric(topics$T5), 
         T6 = as.numeric(topics$T6), 
         .Names = c("T1","T2","T3","T4","T5","T6"), 
         class = "data.frame"), 
         row.names = c(NA, 6L)) 
attach(data) 
print(data) 
dput(head(data)) 
colours <- c("red", "orange", "blue", "yellow", "green","black") 
barplot(as.matrix(data), main="My Barchart", ylab = "Numbers", cex.lab = 1.5, cex.main = 1.4, beside=TRUE, col=colours) 
legend("topleft", c("First","Second","Third","Fourth","Fifth","Sixth"), cex=1.3, bty="n", fill=colours) 

:私は、次のコード [based on this tutorial]使用

Error in -0.01 * height : non-numeric argument to binary operator 

dput(head(data))は、データが正常に読み込まれたことを示すを!!エラーは依然として存在します。

+2

コードを使用すると、コードが何を意味しています –

+0

再現性がない再現性ではないでしょうか? – Sultan

+1

これはあなたのコードをコピーして私たちのRコンソールに貼り付けることができず、エラー(私たちは 'topics'を持っていません)を得ることができないということです。私たちはあなたを助けるためにそれを行うことができる必要があります。それは[mcve] –

答えて

0

Richard Scrivenで適切に示唆されているように、as.matrix(data)as.matrix(as.data.frame(data))に置き換える必要があります。

あなたは、同様にこのコードを試すことができます。

colours <- c("red", "orange", "blue", "yellow", "green","black") 
data2 <- data.frame(data) 
barplot(as.matrix(data2), main="My Barchart", ylab = "Numbers", cex.lab = 1.5, cex.main = 1.4, beside=TRUE, col=colours) 
legend("topleft", c("First","Second","Third","Fourth","Fifth","Sixth"), cex=1.3, bty="n", fill=colours) 
+1

これは解決しました。ありがとう – Sultan