参考资料:R语言实战【第2版】
当变量时类别型变量时,若直观察单个类别型变量,可以使用柱状图或饼图;若存在两个类别型变量或更多时,我们可以使用马赛克图。
在马赛克图中,嵌套矩形面积正比于单元格频率,其中该频率就是多维列联表中的频率。颜色和/或阴影可表示拟合模型的残差值。我们可以使用vcd包中mosaic()函数绘制马赛克图。以基础安装中的Titanic数据集为例,它包含存活或死亡的乘客数、乘客的船舱等级、性别、以及年龄层。如下:
mosaic()函数可按照如下方式调用:
mosaic(table)
其中table是数组形式的列联表。另外,可以用:
mosaic(formula,data=)
其中formula是标准的R表达式,data是一个数据框或表格。田间选项shade=TRUE将根据你和模型的皮尔逊残差值对图形上色,添加legend=TRUE将展示残差的图例。
# 展示数据集
Titanic
ftable(Titanic)
# 导入vcd包
library(vcd)
mosaic(Titanic,shade=TRUE,legend=TRUE)
# 第二种表示形式
mosaic(~Class+Sex+Age+Survived,data=Titanic,shade=TRUE,legend=TRUE)