- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
R语言学习系列19-基本统计图形综述
19. 基本统计图形
目录:
一. 条形图
二. 饼图
三. 直方图
四. 箱线图
五. 点图
六. 散点图
七. 相关图
八. QQ图
九. 等高线图
十. 热图
正文:
要观察分类变量与定量变量的数据,最基本的方法就是用图形:
1. 将变量的分布作可视化展示;
2. 通过结果变量进行跨组比较。
一、条形图
条形图通过垂直的或水平的条形展示了类别型变量的分布(频数)。函数barplot()的最简单用法是:
barplot(height)
其中,height为向量或矩阵。
1. 简单条形图(height为向量)
library(vcd) #使用数据集Arthritis
counts - table(Arthritis$Improved)
counts
None Some Marked
42 14 28
par(mfrow=c(1,2))
barplot(counts, main = Simple Bar Plot, xlab = Improvement, ylab = Frequency) #竖直条形图
barplot(counts, main = Horizontal Bar Plot, xlab = Frequency, ylab = Improvement, horiz = TRUE) #水平条形图
2. 堆砌条形图和分组条形图(height为矩阵)
若beside=FALSE(默认值),则矩阵中的每一列都将生成图中的一个条形,各列中的值将给出堆砌的“子条”的高度。
若beside=TRUE,则矩阵中的每一列都表示一个分组,各列中的值将并列而不是堆砌。
library(vcd) #使用数据集Arthritis
counts - table(Arthritis$Improved, Arthritis$Treatment)
counts
Placebo Treated
None 29 13
Some 7 7
Marked 7 21
par(mfrow=c(1,2))
barplot(counts, main = Stacked Bar Plot, xlab = Treatment, ylab = Frequency, col = c(red, yellow, green),legend = rownames(counts)) #堆砌条形图
barplot(counts, main = Grouped Bar Plot, xlab = Treatment, ylab = Frequency, col = c(red, yellow, green),legend = rownames(counts), beside = TRUE) #分组条形图
注:棘状图可对堆砌条形图进行重缩放
library(vcd)
attach(Arthritis)
counts - table(Treatment, Improved)
spine(counts, main = Spinogram Example)
detach(Arthritis)
3. 均值条形图
条形图并不一定要基于计数数据或频率数据,也可以使用数据整合函数并将结果传递给函数barplot(),来创建表示均值、中位数、标准差等的条形图。
states - data.frame(state.region, state.x77)
means - aggregate(states$Illiteracy, by = list(state.region), FUN = mean)
means - means[order(means$x), ] #均值从小到大排序
means
Group.1 x
3 North Central 0.700000
1 Northeast 1.000000
4 West 1.023077
2 South 1.737500
barplot(means$x, names.arg=means$Group.1) #参数2设置标签
title(Mean Illiteracy Rate)
4. 条形图的微调
par(mar = c(5, 8, 4, 2))
par(las = 2) #旋转图形标签
counts - table(Arthritis$Improved)
barplot(counts, main = Treatment Outcome, horiz = TRUE, s = 0.8, names.arg = c(No Improve
文档评论(0)