Matlab论文插图绘制模板第43期—直方图(histogram)

发布于:2023-01-17 ⋅ 阅读:(718) ⋅ 点赞:(0)

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

这一次,来分享一种比较特殊的柱状图:统计直方图

先来看一下成品效果

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


模板中最关键的部分内容

1. 数据准备

此部分主要是读取原始数据

% 读取数据load data.mat;

2. 颜色定义

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

这里直接用之前分享的colorplus工具

%% 颜色定义C = colorplus([378 187 83]);C1 = C(1,:);C2 = C(2,:);C3 = C(3,:);

3. 直方图绘制

使用‘histogram’命令,绘制未经美化的直方图

h1 = histogram(data1,25);h2 = histogram(data2,25);h3 = histogram(data3,25);hTitle = title('Histogram Plot');hXLabel = xlabel('XAxis');hYLabel = ylabel('YAxis');

值得一提的是,histogram函数需要Matlab R2014b以上。

4. 细节优化

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

% 赋色set(h1,'facecolor',C1,'facealpha',0.8)set(h2,'facecolor',C2,'facealpha',0.8)set(h3,'facecolor',C3,'facealpha',0.8)

进一步,添加图例,调整字体字号、背景颜色等属性:

% 坐标轴美化set(gca, 'Box', 'off', ...                                       % 边框         'XGrid', 'off', 'YGrid', 'on', ...                      % 网格         'TickDir', 'out', 'TickLength', [.01 .01], ...          % 刻度         'XMinorTick', 'off', 'YMinorTick', 'off', ...           % 小刻度         'XColor', [.1 .1 .1],  'YColor', [.1 .1 .1],...         % 坐标轴颜色         'XTick', -8:2:8,...                                     % 刻度位置、间隔、范围         'YTick', 0:100:800,...                                               'Xlim' , [-8 8],...         'Ylim' , [0 700])% 添加图例hLegend = legend([h1,h2,h3], ...                 'Samp1', 'Samp2','Samp3', ...                 'Location', 'northeast');hLegend.ItemTokenSize = [7 7];P = hLegend.Position;hLegend.Position = P + [0.015 0.03 0 0];% 字体和字号set(gca, 'FontName', 'Arial', 'FontSize', 10)set([hXLabel,hYLabel,hLegend], 'FontName',  'Arial', 'FontSize', 10)set(hTitle, 'FontSize', 12, '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直方图绘制模板

本文含有隐藏内容,请 开通VIP 后查看