之前是一些基础,还没到具体的图形类型,后边这些更实用吧,用来展示数据,学会这些就可以做出好看的统计图啦。
首先基本的条形图!
barplot(height) 最简单的形式,height是一组向量,指的是条形图的高度,或者长度。
par(mfrow = c(1,2))
barplot(c(1,2,3,4,5))
barplot(c(1,2,3,4,5),horiz = T)#水平放置
生成最原始的柱状图。
堆积条形图与分组条形图。
在做堆积条形图时,需要变成一个table,数据框是不可以的,我自己随便造了一个数据,一些人对某个意见的支持与否,来试一下。
setwd("D:/R_demo")
data1<-read.csv("data1.csv")#编的,对一个方法同意与否,与性别的关系
t1<-table(data1$gender,data1$result)#频数列联表
t1
barplot(t1,main = 'Stacked Bar Plot',xlab = 'result',ylab = 'number of people',
col = c('red','blue'),legend = rownames(t1))#对两列作图,图例大小不合适,不知道怎么在里边改
barplot(t1,main = 'Stacked Bar Plot',xlab = 'result',ylab = 'number of people',
col = c('red','blue'))#额外加,挺费劲
legend('topleft',cex = 0.5,title = "gender",rownames(t1),fill = c('red','blue'))#用fill就是方块,填充。
结果分别是:
虽然还是挺难看的呜呜。
#分组
barplot(t1,main = 'Stacked Bar Plot',xlab = 'result',ylab = 'number of people',
col = c('red','blue'),legend = rownames(t1),beside = T)#让条形不是堆积而是相邻
对R默认的图形,都能用par(),title(),legend()等函数进行修改和叠加,个人感觉有点琐碎。
此外还有棘状图,让条形长度都是1,进行缩放,就是看一个比例了。
来看看:
install.packages("vcd")
library(vcd)
spine(t1,main = 'spinogram')
那基本图形-条形图就先这些啦,感觉原始图还是不太好看,需要很多人工调整才行。
加油。