【MATLAB基础绘图第7棒】绘制各式柱状图

这篇具有很好参考价值的文章主要介绍了【MATLAB基础绘图第7棒】绘制各式柱状图。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 分组绘制柱状图

1.1 案例1:常规分组柱状图

绘制分组数据,并对数据格式和边框等进行设置,成图如下所示:
【MATLAB基础绘图第7棒】绘制各式柱状图
MATLAB绘制代码如下:

clc
close all
clear
%% 导入数据
pathFigure= '.\Figures\' ;
Name = ["生活","生态","工业","农业","汇总"];
xLables = ['Ⅰ' ; 'Ⅱ'; 'Ⅲ'];   
mycolor = [53,42,134;
          21,132,212;
          55,184,156;
          215,186,84;
          247,250,13]./255;
      
x = [1 2 3];         
XX = [0	0	0	3.92	2.78
0	0	0	6.63	4.2
0.78	8.37	9.98	22.15	15.46];

figure(1);
hold on;
box on;
h = bar(  XX ,'FaceColor','flat');
for k = 1:size(XX,2)
    h(k).FaceColor = mycolor(k,:);
end
set(gca,'XTick', x , 'XTickLabel',xLables);
set(gca,'FontSize',12,'Fontname', 'Times New Roman');
xlabel("情景",'FontName','宋体','FontSize',14,'Fontweight','bold');                          % 后续调整坐标标题
ylabel("\fontname{宋体}\fontsize{15}缺水率(\fontname{Times New Roman}\fontsize{15}%\fontname{宋体}\fontsize{15})",'FontSize',14,'Fontweight','bold');                          % 后续调整坐标标题
hl = legend( Name );
set(hl,'Box','off','location','NorthWest','NumColumns',1,'FontSize',12,'FontName','宋体');    
ax1 = gca;
ax1.FontSize = 12;
ax1.LineWidth = 1;
set(gca,'Layer','top');

str= strcat(pathFigure, "Figure1", '.tiff');
print(gcf, '-dtiff', '-r600', str);

2 绘制多组柱状图并修改文字颜色一致

【MATLAB基础绘图第7棒】绘制各式柱状图
图源:J2022-Observed decrease in light precipitation in part due to urbanization-Scientific Reports

2.1 案例

3 绘制双轴-倒立柱状图

成图如下:
【MATLAB基础绘图第7棒】绘制各式柱状图
MATLAB代码如下:

clc
close all
clear
%% 导入数据
pathFigure= '.\Figures\' ;

X = randn(40,1);
Ymax = 50;
Y = Ymax*randn(40,1);

%% 开始绘图
figure(1)
hold on;box on;grid off;
h(3) = area( X,'FaceColor', [0.5529,0.7137,0.8039] ,'LineStyle','none');
[AX,h(1),h(2)] = plotyy( 1:length(X), X, 1:length(X) , Y, 'plot','bar');              % 画双轴,AX(1)左轴,AX(2)右轴,H为曲线本身
set(AX(2),'YDir','reverse','Ylim',[0, Ymax*3 ],'YTick',[0:20:Ymax*2],'FontSize',12,'Fontname', 'Times New Roman');                    % 设置右边轴为倒立
set(gca,'box','off','Ytick',[])
set(AX(1),'YLim',[min(X)*1.5,1.5*max(X)],'YTick',[floor(min(X)*1.5):1:ceil(1.5*max(X)) ],'Fontsize',10,'YColor','k');
%设置坐标轴的标题
h(5) = plot( zeros( length(X) ,1) ,'k-','linewidth',0.75);
set(get(AX(1),'Xlabel'),'String','XLabel','Fontname', 'Times New Roman');          
set(get(AX(1),'Ylabel'),'String','YLabel1','Fontname', 'Times New Roman');      
set(get(AX(2),'Ylabel'),'string','YLabel2','LineStyle','none','Fontname', 'Times New Roman');
set(gca,'Layer','top','FontSize',12,'Fontname', 'Times New Roman');

str= strcat(pathFigure, "Figure 1", '.jpg');
print(gcf, '-djpeg', '-r600', str);

4 绘制区间位置柱状图

区间范围柱状图是柱状图的一种,能够更加清晰地展示各类目数据区间范围分布的差异。支持通过获取数据的最小值和最大值之间的范围,展示不同类目下柱图的数据样式。 如下图所示:
【MATLAB基础绘图第7棒】绘制各式柱状图
图源:J2022-Amplification of non-stationary drought to heatwave duration and intensity in eastern China Spatiotemporal pattern and causes

5 堆积柱状图

成果图如下:
【MATLAB基础绘图第7棒】绘制各式柱状图
相关MATLAB绘图代码如下:文章来源地址https://www.toymoban.com/news/detail-492164.html

%% 图形绘制

figure(1);
hold on;
box on;
h = bar(  Data'*100,'stacked' ,'FaceColor','flat');
set(gca,'Layer','top','FontSize',12,'Fontname', 'Times New Roman');
set(gca,'YTick', [0:20:105] , 'YTickLabel', [0:20:100] ,'Fontname', 'Times New Roman');
set(gca,'XTick', [1.5:2:6] , 'XTickLabel', BasinName);
xlabel("流域",'FontName','宋体','FontSize',14,'Fontweight','bold');                          % 后续调整坐标标题
ylabel("\fontname{宋体}贡献率\fontname{Times New Roman}/%",'FontSize',14,'Fontweight','bold');                          % 后续调整坐标标题
hl = legend( Name );
set(hl,'Box','off','location','NorthOutside','NumColumns',6,'FontSize',10,'FontName','Times New Roman');    
set(gca,'Layer','top');

str= strcat(pathFigure, "Figure1", '.tiff');
print(gcf, '-dtiff', '-r600', str);

参考

到了这里,关于【MATLAB基础绘图第7棒】绘制各式柱状图的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • R语言绘图:绘制横向柱状图

    R语言绘图:绘制横向柱状图

    代码主要实现: 对数据进行排序,并且相同分组的数据会有相同的颜色。最后,绘制横向柱状图。 结果展示:

    2024年04月16日
    浏览(9)
  • 【MATLAB基础绘图第4棒】绘制椭圆形相关系矩阵图

    【MATLAB基础绘图第4棒】绘制椭圆形相关系矩阵图

    数据及代码下载: 下载专区-《MATLAB统计分析与应用:40个案例分析》程序与数据 绘图函数: 数据如下: MATLAB代码如下: 运行上述命令得出变量间的相关系数矩阵R、线性相关性检验的p值矩阵P以及相关系数矩阵图。成图如下所示: 图形参数修改可根据需要对 matrixplot函数 进

    2024年02月04日
    浏览(6)
  • 【MATLAB基础绘图第9棒】绘制截断坐标轴(Broken Axis)

    【MATLAB基础绘图第9棒】绘制截断坐标轴(Broken Axis)

    有时候,用MATLAB绘制坐标图时会出现有的曲线值都特别大,有的曲线值都很小,但是又想在同一幅图中将他们展示出来,于是需要截断坐标轴的刻度或者改变纵轴的刻度,使其不均匀。此时,就需要对横坐标或纵坐标进行截断。 参考:博客-MATLAB实例:截断坐标轴(Broken Axis)

    2024年02月06日
    浏览(17)
  • Pearson相关性分析& plot绘图(相关性系数柱状图、绘制非空值数量柱状图)

    Pearson相关性分析& plot绘图(相关性系数柱状图、绘制非空值数量柱状图)

    Pearson相关性分析是一种用于检测两个变量之间线性关系强度的统计方法,其结果介于-1和1之间。一个相关系数为1表示完全正相关,-1表示完全负相关,0则表示没有线性关系。 Pearson相关性分析假设数据来自正态分布,并且对异常值敏感。

    2024年02月09日
    浏览(14)
  • Matlab进阶绘图第39期—分组蝴蝶图

    Matlab进阶绘图第39期—分组蝴蝶图

    分组蝴蝶图是蝴蝶图的一种变形 。 分组蝴蝶图一般 由左右两个水平分组柱状图组合而成,可以很直观地展示两种数据各组分之间的差异 。 本文使用自制的Butterfly小工具进行蝴蝶图的绘制,先来看一下成品效果: 特别提示:本期内容『数据+代码』已上传资源群中,加群的朋

    2024年01月23日
    浏览(28)
  • 【SCI绘图】【小提琴系列1 python】绘制按分类变量分组的垂直小提琴图

    【SCI绘图】【小提琴系列1 python】绘制按分类变量分组的垂直小提琴图

    本期分享:  【SCI绘图】【小提琴系列1 python】绘制按分类变量分组的垂直小提琴图,文末附完整代码 小提琴图是一种常用的数据可视化工具,它结合了箱形图和密度图的特点,用于展示数据的分布情况和变化趋势。其外形类似于小提琴,因而得名。 数据样例: total_bill  

    2024年04月10日
    浏览(9)
  • matlab柱状图的绘制及数值的标注

    matlab柱状图的绘制及数值的标注

    目标是绘制以下的柱状图:  代码: 其中:state_x的数据为6*3矩阵  解释下循环中的程序:text(xx(i)-0.5,state_x(i,1),num2str(state_x(i,1)),\\\'HorizontalAlignment\\\',\\\'center\\\',\\\'VerticalAlignment\\\',\\\'bottom\\\'); %  xx(i)-0.5,state_x(i,1)表示为所要标注的位置,一个为横轴上的,一个为纵轴上的; %  num2str(state_x

    2024年02月16日
    浏览(7)
  • matlab绘图(三)绘制三维图像

    matlab绘图(三)绘制三维图像

    一、绘制三维曲线  二、绘制三维曲面 1.meshgrid函数  2.mesh和surf函数 1.最基本的绘制三维曲线的函数 —plot3 plot3(x1,y1,z1, 选项 1,x2,y2,z2, 选项 2,…, xn,yn,zn , 选项 n) 其中,每一组 x , y , z 组成一组曲线的坐标参数,选项的定义和 plot 函数相同。当 x 、 y 、 z 是同维向量时,则

    2024年02月01日
    浏览(10)
  • 【MATLAB绘图进阶第3弹】Matlab绘制热图系列

    【MATLAB绘图进阶第3弹】Matlab绘制热图系列

    热图的主要作用是直观展示重点研究对象的差异情况,多用于经济学与工学差异性分析之中,我们常见的多变量 相关系数矩阵与混淆矩阵 就可以通过热图增加图示的美感,南同学将和大家一起实现一张多样化的热图绘制! 配色 重要的事情说三遍:配色、配色、配色!!!好

    2024年02月09日
    浏览(10)
  • 《MATLAB科研绘图与学术图表绘制从入门到精通》

    《MATLAB科研绘图与学术图表绘制从入门到精通》

    解锁MATLAB科研绘图魅力,让数据可视化成为你的科研利器! 1.零基础快速入门:软件操作+实战案例+图文、代码结合讲解,从入门到精通快速高效。 2.多种科研绘图方法:科研绘图基础+变量图形+极坐标图形+3D图形+地理信息可视化等,绘图技巧全面掌握。 3.实用性和艺术性兼

    2024年04月13日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包