R:" высота "должна быть вектором или матрицей" ошибка barplot
первый раз, когда пользователь пытается создать простую диаграмму, но я продолжаю получать сообщение об ошибке
'height' must be a vector or a matrix
функция barplot, которую я пытался, это
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
...
где я ошибаюсь здесь?
спасибо заранее!
EDIT:
dput(head (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(как.матрица (данные)) произвела диаграмму со всеми данные один бар в отличие от каждой части данных на отдельном баре.
1 ответов
вы можете указать две переменные, которые вы хотите построить, а не передавать весь фрейм данных, например:
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")
кроме того, вы можете использовать ggplot
для этого:
library(ggplot2)
ggplot(data, aes(x=V1, y=V2)) + geom_bar(stat="identity") +
labs(x="Percentage", y="Proportion")