我正在寻找一个创建所谓的Beeswarm箱图的功能。这是在医学和生物学中使用的非常流行的图,我很惊讶没有找到它用于MATLAB。
基本上每组的数值数据被分割为箱子,点的抖动取决于特定箱子中的点数。
以下是使用BEESWARM函数完成R的示例:
其他组的不同颜色是非常好的功能,但现在我不需要。
答案 0 :(得分:3)
文件交换中有一个名为plotSpread的函数可以执行以下操作:
plotSpread({rand(100,1),randn(100,1)})
data = [randn(50,1);randn(50,1)+3.5]*[1 1];
catIdx = [ones(50,1);zeros(50,1);randi([0,1],[100,1])];
plotSpread(data,'categoryIdx',catIdx,...
'categoryMarkers',{'o','+'},'categoryColors',{'r','b'})