《matlab科研绘图系列》之小提琴图绘制

相信大家对小提琴图并不陌生,它是比箱形图更易于视觉直观解读的图形绘制方法。它使用数据的核密度估计值代替了箱形图,并可选择叠加数据点本身。小提琴图是箱形图的升级加强版,对数据分布有更丰富的理解,同时不必占用更多空间。在小提琴图中,可以轻松发现过于稀疏的数据或多模式分布,而这些在箱形图中可能不会被注意到。本文推荐一款由Bastian Bechtold开发的小提琴图绘制工具箱 —— Violinplots

Violinplot工具共包含三个文件,定义小提琴图类的Violin.m类文件,调用小提琴类的构造函数violinplot.m,以及一个示例文件testviolinplot.m。为了方便展示,小编已经对示例文件做了一定程度上的修改,详见下方示例代码Violinplot可作为boxplot工具箱的直接替代品,当然不包括命名参数。附加的构造函数参数包括小提琴图的宽度、核密度估计的带宽和在X轴分布位置。

       示例代码       

clear;clc;close all;


load carbig MPG Origin
Origin      = cellstr(Origin);
loc         = find(ismember(Origin,'England'));
Origin(loc) = [];
MPG(loc)    = [];


grouporder={'Sweden','USA','Japan','Italy','Germany','France'};  
fig = figure('Position',[495 186 894  700],...
             'Name','matlab科研绘图之小提琴图',...
             'NumberTitle','off',...
             'Color','w',...
             'Menubar','none');
         
vs2 = violinplot(MPG,Origin,'GroupOrder',grouporder,'Width',0.3);
xlim([0.5, 6.5]);
box on;
set(gca,'LineWidth',1.5,...
    'FontName','Times New Roman',...
    'FontWeight','bold',...
    'FontSize',18);

效果图见文首!

关于小提琴图的更多信息,请阅读J.L.Hintze和R.D.Nelson在The American Statistician, vol.52, no.2, pp.181-184, 1998发表的文章 "Violin plots: a box plot-density trace synergism" (DOI: 10.2307/2685478)。

如有需要Violinplot工具箱的关注者,请在懂科学的程序员​​​​​​​​​​​​​​公众号中回复“QQ”加群,在群资料中下载,或点击阅读原文直接下载。

参考资料:github.com/bastibe/Violinplot-Matlab

  • 6
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab是一种非常强大的科研工具,可以用于绘制各种类型的表,包括小提琴小提琴(Violin Plot)是一种常用的数据可视化工具,通过在一个或多个变量上绘制核密度估计、箱线和散点,可以更好地展示数据的分布情况。 在Matlab中,我们可以使用violinplot函数来绘制小提琴。该函数需要提供一个包含数据的矩阵作为输入,其中每一列代表一个变量。通过调整函数的参数,我们可以根据需求进行定制,例如设置小提琴的颜色、边界线样式和宽度等。 绘制小提琴的过程包括以下几个步骤: 1. 创建一个包含数据的矩阵,每一列代表一个变量。 2. 调用violinplot函数,传入数据矩阵作为参数,绘制小提琴。 3. 根据需要,调整小提琴的颜色、边界线样式和宽度等参数。 4. 添加例和标签,使形更加清晰易懂。 5. 根据需要,对绘制小提琴进行美化和调整。 绘制小提琴可以帮助我们更好地理解数据的分布情况,例如不同变量之间的差异和异常值的存在。通过调整小提琴的参数和美化绘图效果,我们可以使像更具吸引力,并达到更好的数据可视化效果。 总而言之,Matlab是一个非常强大的科研工具,可以用于绘制各种类型的科研表,包括小提琴。通过合理选择函数和调整参数,我们可以根据需求绘制出清晰、美观的小提琴,以帮助更好地理解数据的分布情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值