R语言做柱状图大致有两种方法, 一种是基础库里面的 barplot函数, 另一个就是ggplot2包里面的geom_bar
此处用的是字符变量 统计其各频数,然后做出其柱状图。(横轴上的标签显示不全)
t <- sort(table(dat1$L), decreasing = TRUE) #将频数表进行排序
r <- barplot(t, col = "blue",
main = "柱状图", ylim = c(0,12), names.arg = dimnames(t) #画字符变量的柱状图
tmp <- as.vector(t) #将频数变成一个向量
text(r, tmp, label = tmp, pos = 3) #加柱子上面的标签
或用ggplot2包 (目前仍没有给柱子上加数字标签)
library(ggplot2) #加载ggplot2包
reorder_size <- function(x) {
factor(x, levels = names(sort(table(x))))
} #自定义函数,获取因子型变量的因子类型
p <- ggplot(dat3, aes(reorder_size(LAI))) + #用因子变量做基础底图,也可直接用reorder排序
geom_bar(fill = "blue") + #画柱状图
theme(axis.text.x = element_text(angle = 45, hjust = 0.5, vjust = 0.5)) + #让横轴上的标签倾斜45度
xlab("柱状图") #给x轴加标签