【Matlab高端绘图SCI绘图模板】第006期 对比绘柱状图 (只需替换数据)

  1. 简介

柱状图作为科研论文中常用的实验结果对比图,本文采用了3组实验对比的效果展示图,代码已调试好,只需替换数据即可生成相关柱状图,为科研加分。通过获得Nature配色的柱状图,让你的论文看起来档次更高,让你的科研更快地进行成果产出。用户能够生成既美观又精确的数据可视化图表。代码涵盖了从数据准备到最终图像输出的全过程,包括文件读取、颜色自定义、图形界面设置、数据可视化以及图像导出等关键步骤。适合数据科学家、工程师、学生或任何需要在科研、报告或日常工作中进行数据可视化的Matlab用户。用户可以根据自己的需求修改数据读取范围和颜色设置,以适应不同的数据集和视觉喜好。

  1. 对比柱状图完整效果
  1. 关键代码展示

%% 图片尺寸设置(单位:厘米)

figureUnits = 'centimeters';

figureWidth = 12;

figureHeight = 8;

%% 柱状图绘制

%窗口设置

figureHandle = figure;

set(gcf, 'Units', figureUnits, 'Position', [0 0 figureWidth figureHeight]); % define the new figure dimensions

hold on

% 绘制柱图

% 1-调节柱间距

GO = bar(dataset,1,'EdgeColor','k');

% 赋色

GO(1).FaceColor = C1;

GO(2).FaceColor = C2;

GO(3).FaceColor = C3;

% 文字注释,不需要可删

for ii=1:5

text(ii-0.24,dataset(ii,1)+0.005,num2str(dataset(ii,1)),...

'ROtation',90,'color',C1,'FontSize',10,'FontName', 'Helvetica');

text(ii,dataset(ii,2)+0.01,num2str(dataset(ii,2)),...

'ROtation',90,'color',C2,'FontSize',10,'FontName', 'Helvetica');

text(ii+0.22,dataset(ii,3)+0.01,num2str(dataset(ii,3)),...

'ROtation',90,'color',C3,'FontSize',10,'FontName', 'Helvetica');

end

% 坐标区调整

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],... % 坐标轴颜色

'YTick', 0:0.1:1,... % 刻度位置、间隔

'Ylim' , [0 0.6], ... % 坐标轴范围

'Xticklabel',{'samp1' 'samp2' 'samp3' 'samp4' 'samp5'},...% X坐标轴刻度标签

'Yticklabel',{[0:0.1:1]}) % Y坐标轴刻度标签

% 标签及Legend 设置

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

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

'A', 'B', 'C', ...

'Location', 'northeast');

% Legend位置微调

P = hLegend.Position;

hLegend.Position = P + [0.015 0.03 0 0];

相关推荐
嘉琪00118 分钟前
Vue3+JS 高级前端面试题
开发语言·前端·javascript
xunyan623424 分钟前
面向对象(下)-接口的理解
java·开发语言
遥不可及~~斌33 分钟前
Java 面试题集 -- 001
java·开发语言
2501_9216494935 分钟前
如何获取美股实时行情:Python 量化交易指南
开发语言·后端·python·websocket·金融
集智飞行1 小时前
c++函数传参的几种推荐方式
开发语言·c++
鼾声鼾语2 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab
麦麦鸡腿堡2 小时前
Java_类的加载
java·开发语言
我命由我123452 小时前
VSCode - Prettier 配置格式化的单行长度
开发语言·前端·ide·vscode·前端框架·编辑器·学习方法
JIngJaneIL2 小时前
基于java + vue校园快递物流管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js
超级大只老咪2 小时前
数组的正向存储VS反向存储(Java)
java·开发语言·python