R Barplot调用导致错误:“'height'必须是向量或矩阵”

am46iovg  于 2024-01-03  发布在  其他
关注(0)|答案(1)|浏览(484)

我试着为这些数据制作一个条形图:

  1. Area,Diversity
  2. A,0.455
  3. B,0.354
  4. C,0.531
  5. D,0.313

字符串
我尝试的代码是这样的:

  1. barplot(data=pdiv, aes(x=Area, y=Diversity)) + theme_bw() + xlab("Area") + ylab("Simpson's Diversity score (1-D")


但它总是出现这样的错误:

  1. Error in barplot.default(data = pdiv, aes(x = Area, y = Diversity)) :
  2. 'height' must be a vector or a matrix


接下来我可以尝试什么?

lp0sw83n

lp0sw83n1#

barplot()函数要求直接输入y轴值,而不是通过aes()函数。尝试,

  1. Area <- c("A", "B", "C", "D")
  2. Diversity <- c(0.455, 0.354, 0.531, 0.313)
  3. pdiv <- data.frame(Area, Diversity)
  4. barplot(
  5. height = pdiv$Diversity,
  6. names.arg = pdiv$Area,
  7. xlab = "Area",
  8. ylab = "Simpson's Diversity score (1-D)",
  9. main = "Bar Chart"
  10. )

字符串
现在barplot()函数中的height参数将y轴值作为向量。
测试结果:


的数据
或者使用等效的ggplot2版本:

  1. ggplot(pdiv, aes(Area, Diversity)) +
  2. geom_col() +
  3. theme_bw() +
  4. xlab("Area") +
  5. ylab("Simpson's Diversity score (1-D)")


展开查看全部

相关问题