spineplot
位于 graphics
包(package)。 说明
脊柱图是马赛克图的特殊情况,可以看作是堆叠(或突出显示)条形图的概括。类似地,脊柱图是直方图的扩展。
用法
spineplot(x, ...)
## Default S3 method:
spineplot(x, y = NULL,
breaks = NULL, tol.ylab = 0.05, off = NULL,
ylevels = NULL, col = NULL,
main = "", xlab = NULL, ylab = NULL,
xaxlabels = NULL, yaxlabels = NULL,
xlim = NULL, ylim = c(0, 1), axes = TRUE, weights = NULL, ...)
## S3 method for class 'formula'
spineplot(formula, data = NULL,
breaks = NULL, tol.ylab = 0.05, off = NULL,
ylevels = NULL, col = NULL,
main = "", xlab = NULL, ylab = NULL,
xaxlabels = NULL, yaxlabels = NULL,
xlim = NULL, ylim = c(0, 1), axes = TRUE, ...,
subset = NULL, weights = NULL, drop.unused.levels = FALSE)
参数
x |
一个对象,默认方法需要一个单一变量(解释为解释变量)或一个双向表。查看具体信息。 |
y |
|
formula |
|
data |
一个可选的 DataFrame 。 |
breaks |
如果解释变量是数字,则它控制它的离散化方式。 |
tol.ylab |
y 轴注释的方便公差参数。如果两个标签之间的距离低于此阈值,则会等距绘制它们。 |
off |
条形之间的垂直偏移(以百分比为单位)。对于脊柱图,它固定为 |
ylevels |
一个字符或数值向量,指定应按什么顺序绘制因变量的水平。 |
col |
与 |
main , xlab , ylab |
注释字符串 |
xaxlabels , yaxlabels |
用于 x 轴和 y 轴注释的字符向量。对于脊柱图,分别默认为 |
xlim , ylim |
具有合理默认值的 x 和 y 值的范围。 |
axes |
合乎逻辑的。如果 |
weights |
数字。数据中每个观测值的频率权重向量。如果 |
... |
传递给 |
subset |
一个可选向量,指定用于绘图的观测值子集。 |
drop.unused.levels |
未使用的因子是否应该下降?默认为 |
细节
spineplot
创建脊柱图或脊柱图。可以通过 spineplot(x, y)
或 spineplot(y ~ x)
调用,其中 y
被解释为因变量(并且必须是分类变量),x
被解释为解释变量。 x
可以是分类的(然后创建脊柱图)或数字的(然后绘制脊柱图)。此外,spineplot
也可以仅使用单个参数调用,该参数必须是一个双向表,解释为对应于 table(x, y)
。
脊柱图和脊柱图本质上都是具有特殊间距和阴影格式的马赛克图。从概念上讲,他们将 breaks
参数调用 hist
),然后获取经验相对频率。 与 进行了比较。对于脊柱图(其中 和 都是分类的),这两个量均由相应的经验相对频率近似。对于脊柱图(其中 是数值),首先对 进行离散化(通过使用
因此,脊柱图也可以被视为堆叠条形图的概括,其中条形图的宽度而不是高度对应于 x
的相对频率。然后,条形的高度对应于每个 x
组中 y
的条件相对频率。类似地,旋转图扩展了堆叠直方图。
值
可视化的表格以不可见的方式返回。
例子
## treatment and improvement of patients with rheumatoid arthritis
treatment <- factor(rep(c(1, 2), c(43, 41)), levels = c(1, 2),
labels = c("placebo", "treated"))
improved <- factor(rep(c(1, 2, 3, 1, 2, 3), c(29, 7, 7, 13, 7, 21)),
levels = c(1, 2, 3),
labels = c("none", "some", "marked"))
## (dependence on a categorical variable)
(spineplot(improved ~ treatment))
## applications and admissions by department at UC Berkeley
## (two-way tables)
(spineplot(marginSums(UCBAdmissions, c(3, 2)),
main = "Applications at UCB"))
(spineplot(marginSums(UCBAdmissions, c(3, 1)),
main = "Admissions at UCB"))
## NASA space shuttle o-ring failures
fail <- factor(c(2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1,
1, 1, 1, 2, 1, 1, 1, 1, 1),
levels = c(1, 2), labels = c("no", "yes"))
temperature <- c(53, 57, 58, 63, 66, 67, 67, 67, 68, 69, 70, 70,
70, 70, 72, 73, 75, 75, 76, 76, 78, 79, 81)
## (dependence on a numerical variable)
(spineplot(fail ~ temperature))
(spineplot(fail ~ temperature, breaks = 3))
(spineplot(fail ~ temperature, breaks = quantile(temperature)))
## highlighting for failures
spineplot(fail ~ temperature, ylevels = 2:1)
作者
Achim Zeileis Achim.Zeileis@R-project.org
参考
Friendly, M. (1994). Mosaic displays for multi-way contingency tables. Journal of the American Statistical Association, 89, 190-200. doi:10.2307/2291215.
Hartigan, J.A., and Kleiner, B. (1984). A mosaic of television ratings. The American Statistician, 38, 32-35. doi:10.2307/2683556.
Hofmann, H., Theus, M. (2005), Interactive graphics for visualizing conditional distributions. Unpublished Manuscript.
Hummel, J. (1996). Linked bar charts: Analysing categorical data graphically. Computational Statistics, 11, 23-33.
也可以看看
mosaicplot
, hist
, cdplot
相关用法
- R stem 茎叶图
- R stars 星图(蜘蛛图/雷达图)和线段图
- R smoothScatter 具有平滑密度颜色表示的散点图
- R sunflowerplot 制作向日葵散点图
- R symbols 绘制符号(圆形、正方形、星形、温度计、箱线图)
- R stripchart 一维散点图
- R screen 在单个设备上创建和控制多个屏幕
- R strwidth 绘制字符串和数学表达式的维数
- R segments 将线段添加到绘图中
- R legend 将图例添加到绘图中
- R barplot 条形图
- R plot.histogram 绘制直方图
- R points 向绘图添加点
- R mtext 将文本写入绘图的边距
- R arrows 将箭头添加到绘图中
- R contour 显示轮廓
- R pairs 散点图矩阵
- R box 在地块周围画一个方框
- R coplot 调节图
- R mosaicplot 马赛克图
- R bxp 从摘要中绘制箱线图
- R plot.raster 绘制光栅图像
- R axTicks 计算轴刻度线位置
- R curve 绘制函数图
- R plot.factor 绘制因子变量
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Spine Plots and Spinograms。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。