Matlab怎么绘制小提琴图
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要为大家展示了"Matlab怎么绘制小提琴图",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Matlab怎么绘制小提琴图"这篇文章吧。1使用示例基
千家信息网最后更新 2025年11月07日Matlab怎么绘制小提琴图
这篇文章主要为大家展示了"Matlab怎么绘制小提琴图",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Matlab怎么绘制小提琴图"这篇文章吧。
1使用示例
基础使用,Y为矩阵
X=1:5;Y=randn(100,5);Hdl1=violinChart(gca,X,Y,[0 0.447 0.741],0.6);
X:横坐标
Y:数据集
FaceColor :颜色,示例用的是[0 0.447 0.741]
width : 小提琴图宽度,这里取的是0.6,就是以两个小提琴图间距的0.6倍为概率密度的上限1
基础使用,Y为向量,X为标签
X=[1.*ones(1,50),2.*ones(1,30),3.*ones(1,20),4.*ones(1,50),5.*ones(1,50)];Y=randn(1,200)+sin(X);Hdl=violinChart(gca,X,Y,[0 0.447 0.741]);
基础使用多个图像绘制,并添加图例
X1=[1:2:7,13];Y1=randn(100,5)+sin(X1);X2=2:2:10;Y2=randn(100,5)+cos(X2);figureHdl1=violinChart(gca,X1,Y1,[0 0.447 0.741]);Hdl2=violinChart(gca,X2,Y2,[0.850 0.325 0.098]);legend([Hdl1.F_legend,Hdl2.F_legend],{'randn+sin(x)','randn+cos(x)'});2完整代码
function Hdl=violinChart(ax,X,Y,FaceColor,width)% @author slandarer% Hdl: 返回的图形对象句柄结构体% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Hdl.F_density(i) | patch | 核密度分布% Hdl.F_outlier(i) | scatter | 离群值点% Hdl.F_range95(i) | line | 去除离群值点后最大值及最小值% Hdl.F_quantile(i) | patch | 四分位数框% Hdl.F_medianLine(i)| line | 中位数%% Hdl.F_legend | patch | 用于生成legend图例的图形对象% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% 请使用如下方式生成图例:% Hdl1=violinChart(ax,X,Y,... ...)% Hdl2=violinChart(ax,X,Y,... ...)% ... ...% legend([Hdl1,Hdl2,... ...],{Name1,Name2,...})% ===========================================================% 以下为使用实例代码:% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% X1=[1:2:7,13];% Y1=randn(100,5)+sin(X1);% X2=2:2:10;% Y2=randn(100,5)+cos(X2);% % Hdl1=violinChart(gca,X1,Y1,[0 0.447 0.741],0.5);% Hdl2=violinChart(gca,X2,Y2,[0.850 0.325 0.098],0.5);% legend([Hdl1.F_legend,Hdl2.F_legend],{'randn+sin(x)','randn+cos(x)'});if nargin<5 width=0.4;endif ~isempty(ax)else ax=gca;endhold(ax,'on');oriX=X;X=unique(X);sep=min(diff(X));if isempty(sep) sep=1;endfor i=1:length(X) if length(oriX)==numel(Y) tY=Y(oriX==X(i)); else tY=Y(:,i); end [f,yi]=ksdensity(tY); Hdl.F_density(i)=fill([f,-f(end:-1:1)].*sep.*width+X(i),[yi,yi(end:-1:1)],FaceColor); outliBool=isoutlier(tY,'quartiles'); outli=tY(outliBool); Hdl.F_outlier(i)=scatter(repmat(X(i),[length(outli),1]),outli,20,'filled',... 'CData',[1 1 1],'MarkerEdgeColor','none'); nY=tY(~outliBool); Hdl.F_range95(i)=plot([X(i),X(i)],[min(nY),max(nY)],'k','lineWidth',1); qt25=quantile(tY,0.25); qt75=quantile(tY,0.75); Hdl.F_quantile(i)=fill(X(i)+0.6.*sep.*width.*[-1 1 1 -1].*max(f),... [qt25,qt25,qt75,qt75],[1 1 1],... 'EdgeColor',[0 0 0]); med=median(tY); Hdl.F_medianLine(i)=plot(X(i)+0.6.*sep.*width.*[-1 1].*max(f),[med,med],'LineWidth',3,... 'Color',[0 0 0]);endHdl.F_legend=Hdl.F_density(1);end以上是"Matlab怎么绘制小提琴图"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
小提琴
内容
图例
基础
篇文章
代码
图形
密度
对象
示例
学习
帮助
生成
最大
最小
上限
两个
中位数
位数
句柄
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国互联网科技公司排行
深圳管理软件开发如何收费
gis软件开发的三个模式
如何更换刺激战场的服务器
联想r650服务器怎么重装系统
洛龙区数据库最新消息
还原数据库执行一直0%
ibm 服务器错误代码
机房集中管理服务器
数据库基本运算
潮州网络安全应急指挥中心
河南网络技术分类五星服务
如何访问企业数据库
数据库软件navicate
电力交易软件开发商有哪些
生肖数据库数据
自学软件开发学校哪个最好
易语言怎么给数据库添加数据
软件开发转软件维护
梅州GM互联网络科技有限公司
土拨鼠网络技术待遇怎么样
四川首届网络安全技能大赛
网络安全法实行
池州手机软件开发哪家好
付软件开发费有发票要怎么做账
小米软件开发工程师怎么样
辽宁态势平台软件开发
学手机软件开发好就业吗
tomcat服务器日志
电力交易软件开发商有哪些