R ';高度';必须是向量或矩阵。条形图误差

R ';高度';必须是向量或矩阵。条形图误差,r,bar-chart,R,Bar Chart,我试图创建一个简单的条形图,但我一直收到错误消息 'height' must be a vector or a matrix 我一直在尝试的条形图函数是 barplot(data, xlab="Percentage", ylab="Proportion") 我已经输入了我的csv,数据如下: 34.88372093 0.00029997 35.07751938 0.00019998 35.27131783 0.00029997 35.46511628 0.00029997 35.658914

我试图创建一个简单的条形图,但我一直收到错误消息

'height' must be a vector or a matrix
我一直在尝试的条形图函数是

barplot(data, xlab="Percentage", ylab="Proportion")
我已经输入了我的csv,数据如下:

34.88372093 0.00029997
35.07751938 0.00019998
35.27131783 0.00029997
35.46511628 0.00029997
35.65891473 0.00069993
35.85271318 0.00069993
36.04651163 0.00049995
36.24031008 0.0009999
36.43410853 0.00189981
...
我哪里出了问题

提前谢谢

编辑:

dput(head(data)) outputs:
structure(list(V1 = c(34.88372093, 35.07751938, 35.27131783, 
35.46511628, 35.65891473, 35.85271318), V2 = c(0.00029997, 0.00019998, 
0.00029997, 0.00029997, 0.00069993, 0.00069993)), .Names = c("V1", 
"V2"), row.names = c(NA, 6L), class = "data.frame")

条形图(如.matrix(data))
生成了一个图表,其中所有数据都在一个条形图上,而不是在一个单独的条形图上显示每一条数据。

您可以指定要绘制的两个变量,而不是传递整个数据框,如下所示:

data <- structure(list(V1 = c(34.88372093, 35.07751938, 35.27131783, 35.46511628, 35.65891473, 35.85271318), 
                       V2 = c(0.00029997, 0.00019998, 0.00029997, 0.00029997, 0.00069993, 0.00069993)), 
                  .Names = c("V1", "V2"), row.names = c(NA, 6L), class = "data.frame")

barplot(data$V2, data$V1, xlab="Percentage", ylab="Proportion")

可能整个数据帧格式都是错误的,同样的事情发生在我身上,因为我单独添加了列,并将数据帧制作在一起

table.values = c(value1, value2,.......)
table = matrix(table.values,nrow=number of rows ,byrow = T)
colnames(table) = c("column1","column2",........)
row.names(table) = c("row1", "row2",............)

barplot(table, beside = T, xlab= "X-axis",ylab= "Y-axis")

请编辑您的问题以包含
dput(head(data))
的输出。我猜您正在尝试在
data.frame
上使用
barplot
。尝试
barplot(as.matrix(data))
。文档
?条形图
告诉您高度必须是矢量或矩阵。错误也是如此。或者,我猜,从
lattice
barchart(V2~V1,data,horizontal=FALSE)
table.values = c(value1, value2,.......)
table = matrix(table.values,nrow=number of rows ,byrow = T)
colnames(table) = c("column1","column2",........)
row.names(table) = c("row1", "row2",............)

barplot(table, beside = T, xlab= "X-axis",ylab= "Y-axis")