大家在用 legend 添加图例时有没有遇到过如下问题呢:

不支持使用整数来指定图例位置,请改用位置参数名称-值对组

MATLAB中不支持使用整数来指定图例位置,请改用位置参数名称-值对组_图例

根据之前的学习,是用数字参数来确定注释视窗在图形中的位置的,但是在2016b这个版本会出错(可能是高版本的原因),原来的参数集如下:

参数字符串          含 义

0         尽量不与数据冲突,自动放置在最佳位置

1                           放置在图形的右上角

2                           放置在图形的左上角

3                           放置在图形的左下角

4                           放置在图形的右下角

-1          放置在图形视窗的外右边

查询帮助找到以下参数集:

MATLAB中不支持使用整数来指定图例位置,请改用位置参数名称-值对组_数据冲突_02

MATLAB中不支持使用整数来指定图例位置,请改用位置参数名称-值对组_matlab_03

有些小伙伴是不是直接复制过去了呢,哈哈,我当时也是这么做的。是会报错的哦!

大家在使用这些参数集之前记得声明一下'Location'哦,举个栗子(开头大写的Location,开头小写的northwest哦):

legend('实测值','预测值','Location','northwest')

这是对两个曲线的图形及进行图例注释。

在legend的帮助里还找到了下面的例子:

clear

u=0.5:0.5:3.5;    %等势线的电势

n=length(u);      %等势面的个数

r=1./u;         %距离向量

th=linspace(0,2*pi);   %角度向量

X=cos(th)'*r;       %等势线的x坐标

Y=sin(th)'*r;      %等势线的y坐标

figure;        %创建图形窗口

plot(X,Y,'LineWidth',2);    %画圆

axis equal;     %使坐标间隔相同

grid on;      %加网格

legend([num2str(u'),repmat('\itU\rm_0',n,1)],'Location','NorthEastOutside');%图例

这个例程的结果如下图:

MATLAB中不支持使用整数来指定图例位置,请改用位置参数名称-值对组_字符串_04