我有这样的数据:
> table(A,B,C)
, , C = FALSE
B
A FALSE TRUE
FALSE 177 42
TRUE 6 8
, , C = TRUE
B
A FALSE TRUE
FALSE 5 31
TRUE 4 10
我如何在一个图表上绘制它,可能不强加任何层次结构?
我有这样的数据:
> table(A,B,C)
, , C = FALSE
B
A FALSE TRUE
FALSE 177 42
TRUE 6 8
, , C = TRUE
B
A FALSE TRUE
FALSE 5 31
TRUE 4 10
我如何在一个图表上绘制它,可能不强加任何层次结构?
我会尝试某种 3D 热图、马赛克图或筛子图(在vcd包中提供)。基本功能不是mosaicplot()
与三向表一起使用吗?(至少mosaic3d()
在vcdExtra包中应该可以工作,参见例如http://datavis.ca/R/)
这是一个示例(包括条件图):
A <- sample(c(T,F), 100, replace=T)
B <- sample(c(T,F), 100, replace=T)
C <- sample(c(T,F), 100, replace=T)
tab <- table(A,B,C)
library(vcd)
sieve(tab, shade=TRUE)
cotabplot(tab)
library(vcdExtra)
mosaic3d(tab, type="expected", box=TRUE)
实际上,渲染mosaic3d()
依赖于rgl包,所以很难给出一个漂亮的结果。
我最近看到了 Hadley Wickham 的一篇论文,这让我想起了这个问题(我必须在该网站上花费太多时间!)
威克姆、哈德利和海克霍夫曼。2011.产品图。IEEE Transactions on Visualization and Computer Graphics (Proc. Infovis `11)。预印本 PDF
抽象的
我们提出了一个用于可视化计数、比例和概率表的新框架。我们称我们的框架产品图,暗指将面积计算为高度和宽度的乘积,以及从条件分布和边际分布的乘积生成联合分布的统计概念。该框架及其扩展足以包含先前在统计图形和 infovis 领域中描述的 20 多种可视化,包括条形图、马赛克图、树形图、等面积图和波动图。
我知道尝试给出更多解释是很典型的,但我认为我不能比摘要和张贴一些图片做得更好!他们在最正确的图像中呈现的新颖示例(我相信)可以满足您的要求,而不会施加层次结构。