Matlab论文插图绘制模板第72期—金字塔图

前段时间,有朋友觉得一篇文章里的插图看着不错,问Matlab能不能实现:

Matlab论文插图绘制模板第72期—金字塔图_第1张图片

Matlab论文插图绘制模板第72期—金字塔图_第2张图片

想了想,Matlab中并没有现成的画图代码

但本质上,这种图其实就是横向柱状图的变体,而横向柱状图的绘制模板之前有分享过:

Matlab论文插图绘制模板第72期—金字塔图_第3张图片

既然让咱复刻一下,那就来嘛,反正也不复杂。

先来看一下成品效果:

Matlab论文插图绘制模板第72期—金字塔图_第4张图片

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


模板中最关键的部分内容

1. 数据准备

此部分主要是读取数据,定义自变量和因变量。

% 读取数据% 因变量x = 1:4;% 自变量y1 = [40 55 60 70];y2 = [-75 -75 -90 -90];

2. 颜色定义

使用TheColor配色工具的图片取色功能提取原图配色

%% 颜色定义% C = TheColor('copy');% close% C1 = C(1,:);% C2 = C(2,:);

Matlab论文插图绘制模板第72期—金字塔图_第5张图片

3. 金字塔图绘制

使用‘barh’命令,绘制未经美化的金字塔图

B1 = barh(x,y1,0.7,'BaseValue',0);B2 = barh(x,y2,0.7,'BaseValue',0);hTitle = title('CASE ≤2 or improvement ≥5');

Matlab论文插图绘制模板第72期—金字塔图_第6张图片

4. 细节优化

为了插图的美观,将两个对象赋上之前选择好的颜色

% 赋色B1.FaceColor = C1;B2.FaceColor = C2;

Matlab论文插图绘制模板第72期—金字塔图_第7张图片

进一步,添加标签,并调整坐标轴属性、字体字号、背景颜色等

% 添加注释文本text(-130,4,'4th visit','FontWeight','bold')text(-130,3,'3rd visit','FontWeight','bold')text(-130,2,'2nd visit','FontWeight','bold')text(-130,1,'1st visit','FontWeight','bold')text(80,4,'p=0.303')text(80,3,'p=0.011','FontWeight','bold')text(80,2,'p=0.170')text(80,1,'p=0.010','FontWeight','bold')% 坐标轴调整set(gca,'Box','off',...        'Layer','top',...        'TickDir','out',...        'XTick', -100:20:100,...        'Xticklabel', {[100:-20:0,20:20:100]},...        'Xlim',[-100 100],...        'Ytick',[], ...        'Ylim',[0.5 4.5],...        'Ycolor','w')% 字体字号set(gca, 'FontName','Arial','FontSize',10,'FontWeight','bold')set(hTitle,'FontName','Arial','FontSize',11,'FontWeight','bold')% 背景颜色set(gcf,'Color',[1 1 1])

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

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

Matlab论文插图绘制模板第72期—金字塔图_第8张图片

以上。

完整代码:

Matlab金字塔图绘制模板

你可能感兴趣的:(Matlab插图,matlab,开发语言,可视化,论文插图)