• Matlab进阶绘图第27期—水平双向堆叠图


    在上一期文章中,分享了Matlab双向堆叠图的绘制方法:

    进一步,再来看一下水平双向堆叠图的绘制方法(由于Matlab中未收录水平双向堆叠图的绘制函数,因此需要大家自行设法解决)。

    先来看一下成品效果:

    特别提示:本期内容『数据+代码』已上传资源群中,加群的朋友请自行下载。有需要的朋友可以关注同名公号【阿昆的科研日常】,后台回复关键词【绘图桶】查看加入方式


    1. 数据准备

    此部分主要是读取原始数据,并初始化绘图参数

    % 读取数据load data.mat% 初始化绘图参数x = X;y1 = A1;y2 = A2;

    2. 颜色定义

    作图不配色就好比做菜不放盐,总让人感觉少些味道。

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

    这里直接使用TheColor配色工具中的SCI权威配色库

    %% 颜色定义C = TheColor('sci',2062,'map',6);% C = flipud(C);

    3. 水平双向堆叠图绘制

    通过调用两次‘barh’命令,绘制初始水平双向堆叠图

    GO1 = barh(x,y1,0.9,'stacked','EdgeColor','none');GO2 = barh(x,y2,0.9,'stacked','EdgeColor','none');hTitle = title('Stacked Bidirectional barh chart');hXLabel = xlabel('Xaxis');hYLabel = ylabel('Yaxis');

    4. 细节优化

    为了插图的美观,将初始水平双向堆叠图赋上之前选择的颜色

    % 赋色for i = 1:6    GO1(i).FaceColor = C(i,1:3);    GO2(i).FaceColor = C(i,1:3);end

    进一步,对坐标轴细节等进行一点点美化。

    设置完毕后,以期刊所需分辨率、格式输出图片即可:

    %% 图片输出figW = figureWidth;figH = figureHeight;set(figureHandle,'PaperUnits',figureUnits);set(figureHandle,'PaperPosition',[0 0 figW figH]);fileout = 'test';print(figureHandle,[fileout,'.png'],'-r300','-dpng');

    以上。

  • 相关阅读:
    Grafana Prometheus 监控JVM进程
    iOS 16.2 的7个惊人变化
    洋码头API接口
    ubuntu 16.04成功安装meteor
    vue-引入使用main.js全局常量
    【Selenium】提高测试&爬虫效率:Selenium与多线程的完美结合
    快速部署 Garnet
    用ffmpeg删除视频的音轨,让视频静音
    nginx配置kibana访问用户名和密码认证、及无认证访问配置
    顺序表的实现及操作【C语言最详细版】
  • 原文地址:https://blog.csdn.net/qq_26447137/article/details/132663426