R画图之ggplot2-->柱状图

图就只有两个,但是大多数的画法都可以套出来
1.创建一个数据集:df


install.packages("ggplot2")
library(ggplot2)
x <- c('A','B','C','D','E') 
y <- c(10,20,15,30,40) 
#创建一个data.frame类型的数据集,两列。
df <- data.frame(x= x, y = y)
ggplot(data = df, mapping = aes(x = x, y = y)) + geom_bar(stat= 'identity')


#reorder:x按照y的大小排序,fill:是按照y的大小分类,geom_text:给每一个柱状图的每一根柱子 添加标记,coord_flip:x轴和y轴倒置,互换,labs:定义x,y轴的名字
ggplot(data = df, mapping = aes(x = reorder(x, y), y =  y,fill= y)) + 
        geom_bar(stat= 'identity')+
        geom_text(label=y,colour = "black", vjust=00)+coord_flip()+
        labs(x="x",y="y")

#factor_x 是创建因子,是将x轴按照x的排序,不会乱序,theme:定义样式,face:字体粗细样式,angle:倾斜度
      factor_x <- factor(as.integer(rownames(df)),labels=df$x)
      ggplot(data = df, aes(x=factor_x,y=df$y,fill=y)) +
        geom_bar(stat='identity',width = 0.5)+
        geom_text(label=y,color="black",vjust=00)+
        labs(x="x",y="y")+
        theme(axis.text.x=element_text(face="bold",size=10,angle=45,color="black"))


你可能感兴趣的:(R)