学术资讯 » 学术资源

  • 首 页
  • 期刊选题
  • 期刊点评
  • 期刊大全
  • 学人博客
  • 编辑征稿
  • 投稿选刊
  • 万维群组
  • 学术会议
  • 万维读书
  • SCI/E期刊
  • SSCI期刊
  • AHCI期刊
  • Matlab论文插图绘制模板—堆叠图(横向)

    阅读: 2022/3/29 13:46:22


    在之前的文章中,分享了Matlab柱状图的绘制模板,

    Matlab堆叠图的绘制模板,

    Matlab横向柱状图的绘制模板,

    那么这一次,再来看一下横向堆叠图该怎么画。

    先来看一下成品效果:

    特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行科研绘图的门槛,只需按照模板格式添加相应内容,即可得到满足大部分期刊以及学位论文格式要求的数据插图。如果觉得有用可以分享给你的朋友。

    模板中最关键的部分内容:

     

    1. 数据准备

    此部分主要是读取数据。

    % 读取数据

    % 自变量

    X = 1:7;

    % 因变量

    A = [0.09    0.11    0.15    0.15    0.22   0.33   0.35

        0.06     0.11    0.08    0.18    0.15   0.22   0.38

        0.08     0.05    0.13    0.15    0.15   0.30   0.39

        0.07     0.08    0.16    0.12    0.28   0.28   0.39

        0.05     0.09    0.08    0.10    0.17   0.22   0.39

        0.08     0.10    0.06    0.18    0.27   0.22   0.35];

    需要注意的是,变量A的一列表示一个bar,而同一列中的每个数字表示一个bar上的子单元。

    模板中给出的是6行7列,即有7个bar,每个bar包括6个子单元。

    大家可以根据自己的数据进行调整。

     

    2. 颜色定义

    颜色定义也是一项很重要的工作。

    但颜色搭配比较考验个人审美,需要多加尝试。

    这里我直接用之前分享的addcolorplus工具:

    获取方式:公众号(阿昆的科研日常)后台回复 配色强化

    % 渐变色选择

    map = addcolorplus(288);

    num = size(A,1); % 变量数

    idx = linspace(1,64,num);

    idx = round(idx);

    C = map(idx,:);

     

    3. 横向堆叠图绘制

    使用‘barh’命令,参数选择‘stack’,从而绘制初始的、未经美化的堆叠图。

    GO = barh(X,A',0.8,'stacked','EdgeColor','k');

    4. 细节优化

    为了插图的美观,赋上之前选择好的颜色。

    % 赋色

    GO(1).FaceColor = C(1,:);

    GO(2).FaceColor = C(2,:);

    GO(3).FaceColor = C(3,:);

    GO(4).FaceColor = C(4,:);

    GO(5).FaceColor = C(5,:);

    GO(6).FaceColor = C(6,:);

    进一步,调整坐标轴、坐标轴刻度及其标签,

    % 坐标轴美化

    set(gca, 'Box', 'off', ...                                       % 边框

            'XGrid', 'off', 'YGrid', 'off', ...                      % 网格

            'TickDir', 'out', 'TickLength', [.01 .01], ...           % 刻度

            'XMinorTick', 'off', 'YMinorTick', 'off', ...            % 小刻度

            'XColor', [.1 .1 .1],  'YColor',[.1 .1 .1],...           % 坐标轴颜色

            'XTick',0:0.5:3,...                                      % 刻度位置、间隔、范围

            'YTick',1:7,...                                     

            'Xlim' ,[0 2.5],...

            'Ylim' , [0.4 7.6], ...

            'Yticklabel',{'M1' 'M2' 'M3' 'M4' 'M5' 'M6' 'M7'},...    % Y坐标轴刻度标签

            'Xticklabel',{[0:0.5:3]})                                % X坐标轴刻度标签

    然后添加Legend,调整其位置,

    % 标签及Legend 设置   

    hYLabel = xlabel('RMSE (m)');

    hLegend =legend([GO(1),GO(2),GO(3),GO(4),GO(5),GO(6)], ...

                     'S1', 'S2', 'S3', 'S4', 'S5','S6', ...

                     'Location','southeast','Orientation','horizontal');

    hLegend.ItemTokenSize = [5 5];

    legend('boxoff');

    设置完毕后,以期刊所需分辨率、格式输出。

    %% 输出

    figW = figureWidth;

    figH = figureHeight;

    set(figureHandle,'PaperUnits',figureUnits);

    set(figureHandle,'PaperPosition',[0 0 figWfigH]);

    fileout = 'test';

    print(figureHandle,[fileout,'.png'],'-r300','-dpng');

    以上。

    下载方式

    原创不易,请尊重本人的付出,按照以下方式获取:

    Step1:点击文章最下方的在看按钮

    Step2:在本公众号(阿昆的科研日常)后台回复关键字“横向堆叠图”下载

     

    如有侵权,请联系本站删除!

    浏览(563)
    点赞(0)
    收藏(0)
  • 上一篇:功能强大、易学易用、领先主流的三维CAD必备软件——SolidWorks

    下一篇:高校行政管理人员职业化的问题

  • 首页

  • 文章

  • 期刊

  • 帮助

  • 我的

版权所有 Copyright@2023    备案号:豫ICP备2021036211号