Toccata in Nowhere.

MATLAB 绘图美化工具

2020.08.06

前文中介绍了 Python 的绘图美化工具,本文介绍 MATLAB 的绘图美化工具。

mst 工具

默认设定线宽和字体为 Times New Roman。

将本文件复制到绘图的工作目录下,直接在其他文件的绘图工作结束后,调用 mst()即可使用。

Tips: 如果需要在绘图时绘制较宽的线,可以设定 linewidth参数。例如 plot(x,y,'linewidth',1.1)

函数原型

function mst(Xlabel, Ylabel, Title, Fontsize, Linewidth, Axis)

参数

注意:MATLAB的参数需要按顺序书写,故本脚本顺序按实际实用程序排列,如需使用后面的参数,应当将前面的参数补充完整。

Xlabel / 可选

x轴的坐标label,默认为空。 独立使用可以用 xlabel(Xlabel)替代。

Ylebel / 可选

y轴的坐标label,默认为空。 独立使用可以用 ylabel(Ylabel)替代。

Title / 可选

图名,默认位于图上方中间。 独立使用可以用 title(Title)替代。 如果需要单独修改位置,可以使用 title(Title, 'position', [x,y])

Fortsize / 可选

字体大小,默认 $16$

Linewidth / 可选

坐标轴线宽,默认 $1.1$

Axis / 可选

坐标范围,默认为默认绘图范围。 如需要指定使用 tight范围,可以在绘图函数后使用 axis tight关键字进行指定。

代码

function mst(Xlabel, Ylabel, Title, Fontsize, Linewidth, Axis)
%% multi-setting tool by Dongsh@2020

if nargin == 6
    set(gca, 'linewidth', Linewidth, 'fontsize', Fontsize, 'fontname', 'times');
    xlabel(Xlabel);
    ylabel(Ylabel);
    axis(Axis);
    title(Title);
elseif nargin == 5
    set(gca, 'linewidth', Linewidth, 'fontsize', Fontsize, 'fontname', 'times');
    xlabel(Xlabel);
    ylabel(Ylabel);
%     axis(Axis);
    title(Title);
elseif nargin == 4
    set(gca, 'linewidth', Linewidth, 'fontsize', 16, 'fontname', 'times');
    xlabel(Xlabel);
    ylabel(Ylabel);
%     axis(Axis);
    title(Title);
elseif nargin == 3
    set(gca, 'linewidth', 1.1, 'fontsize', 16, 'fontname', 'times');
    xlabel(Xlabel);
    ylabel(Ylabel);
%     axis tight;
    title(Title);
elseif nargin == 2
    set(gca, 'linewidth', 1.1, 'fontsize', 16, 'fontname', 'times');
    xlabel(Xlabel);
    ylabel(Ylabel);
%     axis tight;
else
    set(gca, 'linewidth', 1.1, 'fontsize', 16, 'fontname', 'times');
%     axis tight;
end