我正在尝试可视化一些可以分层汇总的定量数据。数据的排列方式使每个节点可以:
例如:
A = mean(AA, AB) = mean(0.75 + 0.85) = 0.8
AA = mean(AAA, AAB) = mean(0.6 + 0.9) = 0.75
AAA = 0.6
AAB = 0.9
AB = 0.85
我目前的计划是这样的数字:
节点A在显示其子项的图形上方居中,而AD在显示其子项的子图形上方居中,等等...
我当前的解决方案是使用matplotlib和gridspec递归地处理它(遍历层次结构,使用gridspec将绘图区域分为顶部一行和其余部分,然后在下面一行的列中递归)。它“有效”,但是我要处理很多小情况,例如:
要抓住这些问题,我必须传递很多状态并修复极端情况。是否有其他更好的绘图库或使用matplotlib的其他方法可能会更好?
编辑:
在我当前的尝试中添加带有递归模式的彩色图形。
*首先(顶层)调用将所有内容划分为绿色框(2行,最底行分为3个列),然后递归地分别绘制三列
*第二个调用(黄色)将左下方分为两行,并在其子列上递归
*第三次通话(橙色)...
*第四通电话(红色)...
缺点是我不认为我可以轻松地在给定的行上进行共享的y轴,因为它们与邻居是孤立的。唯一具有该上下文的调用者是顶层,因此之后,我必须深入了解所有图并链接其y轴。