问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Matlab进阶绘图:正负面积图的绘制方法

创作时间:
作者:
@小白创作中心

Matlab进阶绘图:正负面积图的绘制方法

引用
CSDN
1.
https://blog.csdn.net/qq_26447137/article/details/142626499

正负面积图是一种通过水平线将曲线分割为上下两部分,并分别填充不同颜色的图表类型,常用于表示数据的正负属性或不同类别的分布情况。本文将详细介绍如何使用Matlab绘制正负面积图,包括数据准备、颜色定义、图形绘制和细节优化等关键步骤。

数据准备

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

% 读取数据
load data.mat
% 初始化绘图参数
x = X;
y = Y;

颜色定义

作图不配色就好比做菜不放盐,总让人感觉少些味道。但颜色搭配比较考验个人审美,需要多加尝试。这里直接使用TheColor配色工具中的SCI权威配色库:

%% 颜色定义
map = TheColor('sci',1875);
C = map([2,4],:);

正负面积图绘制

调用‘PNarea’命令,绘制初始正负面积图。

[f1,f2] = PNarea(x,y,0,C);
hTitle = title('Up Down Area Plot');
hXLabel = xlabel('xaxis');
hYLabel = ylabel('yaxis');

细节优化

为了插图的美观,对坐标轴细节等进行美化:

% 坐标区调整
set(gca, 'Box', 'off', ...                                % 边框
         'LineWidth',1,...                                % 线宽
         'XGrid', 'off', 'YGrid', 'off', ...              % 网格
         'TickDir', 'out', 'TickLength', [.01 .01], ...   % 刻度
         'XMinorTick', 'off', 'YMinorTick', 'off', ...    % 小刻度
         'XColor', [.1 .1 .1],  'YColor', [.1 .1 .1])     % 坐标轴颜色
% legend
hLegend = legend([f1,f2],...
         {'Samp1', 'Samp2'},...
         'Location','northeast');
% 字体和字号
set(gca, 'FontName', 'Arial', 'FontSize', 10)
set([hXLabel, hYLabel, hLegend], 'FontSize', 11, 'FontName', 'Arial')
set(hTitle, 'FontSize', 12, 'FontWeight' , 'bold')
% 背景颜色
set(gcf,'Color',[1 1 1])
% 添加上、右框线
xc = get(gca,'XColor');
yc = get(gca,'YColor');
unit = get(gca,'units');
ax = axes( 'Units', unit,...
           'Position',get(gca,'Position'),...
           'XAxisLocation','top',...
           'YAxisLocation','right',...
           'Color','none',...
           'XColor',xc,...
           'YColor',yc);
set(ax, 'linewidth',1,...
        'XTick', [],...
        'YTick', []);

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

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

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号