感悟网 导航

matlab中如何调整legend的位置? matlab中legend加图示命令的使用

作者&投稿:祝建 (若有异议请与网页底部的电邮联系)
matlab中如何调整legend的位置?~

可以设置legend函数的参数进行大致设置,还可以通过其位置属性进行精确设置。
举例如下:
x=0:pi/20:pi;
y=sin(x);
plot(x,y);
grid on;

% 利用legend函数的参数进行大致设置
legend('sinx',-1); % 位于图形框外面
legend('sinx',0); % 最佳位置
legend('sinx',1); % 右上角
legend('sinx',2); % 左上角
legend('sinx',3); % 左下角
legend('sinx',4); % 右下角

% 利用位置属性进行精确设置
gca=legend( 'sinx', 4 );
set( gca, 'Position', [10, 50, 100, 400]); % [10, 50, 100, 400]为显示的位置坐标

“matlab”中“legend”加图示命令的使用方法:
N=10;
load x.txt;
load y.txt;
xr=10*ones(N*N);%预测值
n=0:length(x)-1;
figure(1)
plot(n,xr,'-k',n,y,'-.r',n,x,'-bo');% k 是黑色,其他没有问题
legend('预测值','估计结果x','观测数据y');% N = 10;xr = 10*ones(N*N); xr 是 10×10 矩阵。% 把 n 和 xr 的维数调整到一致就可以正常显示 legend 了。

1、首先我们打开matalab软件输入代码如图所示,画的是余弦和正弦图形。

2、该代码画出的图形如图所示,一条余弦曲线和一条正弦曲线。

3、如图所示,点击红框勾选的insert按钮。

4、如图所示点击红框勾选的legend按钮。

5、可以看到,系统自动插入了两个图例,并且自动命名。

6、鼠标双击图例,即可更改图例名称,更改想要的图例名称位置。



1、编辑代码,在一张图上输出至少两条曲线,用以说明图例的设置,用hold on保持两条曲线在一张。

2、此时点击运行即可,如下图绘制出两条曲线,需要添加图例用以区分不同形式曲线的含义及作用。

3、接着生成曲线后,直接可在图形界面点击插入菜单,找到图例后,点击图例即可完成添加,双击可编辑文字内容,点击长按可进行拖动。

4、而legend语句可以直接通过代码控制,如图添加最后一行语句后,继续点击运行,便可显示结果。

5、此时会直接生成带图例的图像,且其中文字已进行了编辑,同样还可进行位置拖动,点击可编辑文字。

6、最后,继续为lengend添加参数。

7、标注的位置发生变化,为了不遮挡曲线,可以合理设置该数字,方便直接生成所需曲线。



matlab中可以通过设置legend的location属性改变其位置,说明如下:
lcn - 图例位置
'north' | 'south' | 'east' | 'west' | 'northeast' | ...

图例相对于坐标轴的位置,指定为下表中列出的位置值之一。


说明

'north' 坐标轴中的顶部
'south' 坐标轴中的底部
'east' 坐标轴中的右侧区域
'west' 坐标轴中的左侧区域
'northeast' 坐标轴中的右上角(二维坐标轴的默认值)
'northwest' 坐标轴中的左上角
'southeast' 坐标轴中的右下角
'southwest' 坐标轴中的左下角
'northoutside' 坐标轴的上方
'southoutside' 坐标轴的下方
'eastoutside' 到坐标轴的右侧
'westoutside' 到坐标轴的左侧
'northeastoutside' 坐标轴外的右上角(三维坐标轴的默认值)
'northwestoutside' 坐标轴外的左上角
'southeastoutside' 坐标轴外的右下角
'southwestoutside' 坐标轴外的左下角
'best' 坐标轴内与绘图数据冲突最少的地方
'bestoutside' 到坐标轴的右侧
'none' 由 Position 属性决定。可使用 Position 属性在自定义位置显示图例。
示例:legend('Location','northeastoutside')

MATLAB 中调整legend位置的方法如下:
(1)legend('图例名称1','图例名称2','图例名称3','图例名称4',...,-1); %----外面右侧
(2)legend('图例名称1','图例名称2','图例名称3','图例名称4',...,0);--------最佳位置
(3)legend('图例名称1','图例名称2','图例名称3','图例名称4',...,1);--------右上角
(4)legend('图例名称1','图例名称2','图例名称3','图例名称4',...,2);--------左上角
(5)legend('图例名称1','图例名称2','图例名称3','图例名称4',...,3);--------左下角
(6)legend('图例名称1','图例名称2','图例名称3','图例名称4',...,4);--------右下角

我用的是R2016b,里面的legend要加位置的话是这样的
legend('string','location','a');
string是函数名称,location不要改,a可以填northeast表示右上角,southeast表示右下角,northwest表示左上角,southwest表示左下角。
还可以在上面四个位置后面加一个outside就代表图外面

   

返回顶部
本页内容来自于网友发表,若有相关事宜请照下面的电邮联系
感悟网