太简单了!直接用 barplot() 命令就行了,不用加载任何其它包。
例子:
## 输入2011年8月26日上海微博达人数据 ##
dr <- matrix(data = NA, nrow = 6, ncol = 2)
dr[1:6] <- c(222,4281,3198,830,59,39)
dr[1:6,2] <- c(730,9493,4445,534,31,44)
colnames(dr) <- c("男","女")
rownames(dr) <- c("18岁以下","18~24","25~30","31~40","41~50","50岁以上")
sum(dr)
## 绘图 ##
par(mfrow = c(3,1))
x <- barplot(t(dr),legend=rownames(t(dr)),main=paste("2011年8月26日上海微博达人统计共",sum(dr),"人"))
y <- dr[,1]+dr[,2]
text(x,y+mean(dr)*0.2,labels=as.character(y))
pielabels <- sprintf("%s = %3.1f%s", rownames(dr),
100*(dr[,1]+dr[,2])/sum(dr), "%")
pie(dr[,1]+dr[,2],labels=pielabels,main=c("2011年8月26日上海微博达人各年龄段所占比例"))
f <- barplot(t(dr[,1]/dr[,2]),main=c("2011年8月26日上海微博达人各年龄段男女比例"))
s <- t(dr[,1]/dr[,2])
text(f,s+mean(s)*0.1,labels=format(s,digits = 3))