我有一个名为";dt";(包含100人,但减少到8人(,并且必须在5个间隔内对工资计数进行柱状图(假设为20000(
ID Salary Bonus
--------------------------
1: 1 100000 57
2: 2 86000 66
3: 3 17000 12
4: 6 50500 37
5: 9 35000 26
6: 10 45000 21
7: 11 95000 54
8: 12 100000 58
如何使用barplot((?这就是我试图做的:
barplot(cut(dt$Salary,c(seq(1,max(dt$Salary(,by=20000((
但它说";高度";需要是向量或矩阵。
我们可以用breaks
将"工资"cut
表示为5,用table
得到频率计数,并用barplot
绘图
barplot(table(cut(df1$Salary, breaks = 5)))
或者在seq
中指定min
和max
以获得序列by
20000
barplot(table(cut(df1$Salary,
breaks = seq(min(df1$Salary)- 100, max(df1$Salary) + 100, by = 20000))))
数据
df1 <- structure(list(ID = c(1L, 2L, 3L, 6L, 9L, 10L, 11L, 12L), Salary = c(100000L,
86000L, 17000L, 50500L, 35000L, 45000L, 95000L, 100000L), Bonus = c(57L,
66L, 12L, 37L, 26L, 21L, 54L, 58L)), class = "data.frame", row.names = c("1:",
"2:", "3:", "4:", "5:", "6:", "7:", "8:"))