You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Matlab 2017网格线属性设置:修改颜色、线宽及线型

在Matlab 2017中设置主次网格线属性的方法

嘿,我来帮你搞定Matlab 2017版本里网格线属性设置的问题~从Matlab R2014b开始,官方切换到了新的HG2图形对象模型,所以早期版本里直接用set(gca,'GridLineColor',...)这类命令已经没法分别控制主次网格线了,不过别担心,用新的属性设置方式就能轻松搞定。

1. 先确保主次网格线处于显示状态

首先得把主次网格线打开,不然设置属性也看不到效果:

% 开启所有坐标轴的主网格
grid on;
% 开启所有坐标轴的次网格
grid minor on;

如果你只想开启特定轴(比如X轴)的网格,可以这样写:

set(gca, 'XGrid', 'on', 'XMinorGrid', 'on');

2. 设置主网格线的颜色、线宽和线型

主网格的属性都以Grid开头,直接针对当前坐标轴对象操作就行:

% 设置主网格颜色为你示例中的[0.7 0.2 0.1](偏红棕色调)
set(gca, 'GridColor', [0.7 0.2 0.1]);
% 设置主网格线宽(默认是0.5,这里改成1.2)
set(gca, 'GridLineWidth', 1.2);
% 设置主网格线型(可选:'-'实线, '--'虚线, ':'点线, '-.'点划线)
set(gca, 'GridLineStyle', '--');

3. 设置次网格线的属性

次网格的属性和主网格类似,只是多了Minor前缀:

% 设置次网格颜色为浅灰色
set(gca, 'MinorGridColor', [0.8 0.8 0.8]);
% 设置次网格线宽
set(gca, 'MinorGridLineWidth', 0.5);
% 设置次网格线型为点线
set(gca, 'MinorGridLineStyle', ':');

4. 完整示例代码(含面向对象写法)

如果你更喜欢Matlab推荐的面向对象写法(更直观),可以这样写:

% 先绘制一个示例图
plot(1:10, rand(1,10));

% 获取当前坐标轴对象
ax = gca;

% 开启主次网格
ax.XGrid = 'on'; ax.YGrid = 'on';
ax.XMinorGrid = 'on'; ax.YMinorGrid = 'on';

% 设置主网格属性
ax.GridColor = [0.7 0.2 0.1];
ax.GridLineWidth = 1.2;
ax.GridLineStyle = '--';

% 设置次网格属性
ax.MinorGridColor = [0.6 0.6 0.6];
ax.MinorGridLineWidth = 0.5;
ax.MinorGridLineStyle = ':';

另外,如果你想给不同坐标轴的网格设置不同属性,比如X轴主网格用红色,Y轴主网格用绿色,可以单独指定带轴前缀的属性:

set(gca, 'XGridColor', [0.7 0.2 0.1], 'YGridColor', [0.1 0.7 0.2]);

内容的提问来源于stack exchange,提问作者user9003011

火山引擎 最新活动