matlab中legend的任意标注

通过对句柄的组装,利用索引可以实现只标注自己想要的点或线。

legend在画图中经常用到,但是如果直接legend(‘图形1‘,‘图形2‘,‘图形3‘);最终所得的标注是按照画图的先后顺序,也就是说假定我plot了3个点,那么legend就会一次标注这些点

但是,经常有这样的需求,画n个点,再把这些点连成折线,再画n个点,再连成线,最后比较这两条线的差异,这样我标注的就只想是点或者是线,但是按照顺序就会点标完了把连的线也标注了。

解决方法如下:

x=[1,2,3];
y=[0.714,0.755,0.706];
h=plot(x,y,‘r-‘,x,y,‘r*‘);
hold on
y=[0.897,0.839,0.933];
h=[h,plot(x,y,‘g-‘,x,y,‘g*‘)];
y=[0.966,0.8,0.917];
h=[h,plot(x,y,‘m-‘,x,y,‘m*‘)];
y=[0.906,0.887,0.905];
h=[h,plot(x,y,‘b-‘,x,y,‘b*‘)];
legend(h([2,4,6,8]),‘疗法一‘,‘疗法二‘,‘疗法三‘,‘疗法四‘);

其中2,4,6,8就是第几个画的图,这里虽然线和点用的是一个plot但是matlab会认为是4*2八个,我们希望标注的只是点。如果标注线就是

legend(h([1,3,5,7]),‘疗法一‘,‘疗法二‘,‘疗法三‘,‘疗法四‘);

---------------------
作者:fengsigaoju
来源:CSDN
原文:https://blog.csdn.net/fengsigaoju/article/details/52237973
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/jiangkejie/p/10759415.html

时间: 2024-08-03 14:23:06

matlab中legend的任意标注的相关文章

Matlab中legend位置

转自:http://blog.sina.com.cn/s/blog_7db803c10102weyk.html Matlab中legend默认的位置在NorthEast,如图所示: %Matlab中legend的位置设置 clc clear close all Npoint = 100; x = linspace(0,4*pi,Npoint); y1 = sin(x); y2 = cos(x); H = plot(x,y1,x,y2); legend('sin(x)','cos(x)'); 然而

【Matlab】Matlab中的plot函数及legend函数解析 持续更新...

Matlab中plot函数全功能解析 功能 二维曲线绘图 语法 plot(Y) plot(X1,Y1,...) plot(X1,Y1,LineSpec,...) plot(...,'PropertyName',PropertyValue,...) plot(axes_handle,...) h = plot(...) hlines = plot('v6',...) 描述 plot(Y)如果Y是m×n的数组,以1:m为X横坐标,Y中的每一列元素为Y坐标,绘制n条曲线:如果Y是n×1或者1×n的向量

Matlab中给figure添加图例(legend),标题(title)和颜色(color)

在Matlab绘图过程中,尤其是需要将多个图绘制在相同的坐标轴中时,通常需要将不同的曲线设置成为不同的颜色.此外,为了直观,还需要给这张图标增添标题和图例.这篇文章展示了在Matlab的绘图窗口(figure)中设置曲线颜色.添加图例(legend)和标题(title)的方法. 在Matlab中,给曲线设定颜色可以采用plot函数实现.如下所示的语句中: plot(x, y, 'r'); 是以 x 变量为横坐标,y 变量为纵坐标绘制红色曲线.其中,颜色控制由 ‘r’实现.在Matlab中,预先留

Matlab中使用LaTeX

Matlab作为数据计算和处理的数学语言(软件),而LaTex作为出版界的重要排版语言(软件),尤其是对数学公式的排版功能特别强.在Matlab中有两种方法使用LaTeX:1)对Matlab生成的图形标注时,2)Matlab的计算结果转化成LaTeX格式. 1)  对Matlab生成的图形标注 Matlab图形中title.xlabel.ylabel.zlabel.textbox和legend等的Interpreter属性有三个属性:latex .tex.none.默认为tex.(注:LaTeX

MATLAB中容易忽略却经常遇到的小技巧总结

1       如何产生一个列向量相同的矩阵 例如,列向量x=[1;2;3],要产生矩阵A=[x,x,x],即[1,1,1;2,2,2;3,3,3]. A = repmat(x,1,n) 2       构造对角矩阵 >> v = [1 1 1]; >> X = diag(v) X = 1 0 0 0 1 0 0 0 1 3       M文件中鼠标放到变量上自动显示变量值设置方法 file菜单 下preferences选项里面找到Editor/debugg 选项中的display

matlab中hold指令、figure指令及subplot指令的使用

一.hold指令使用 正常情况下,plot指令显示figure时,以前的数据丢失了.使用hold on指令后,此后添加的一系列plot曲线将叠加在前一个图上当使用hold off后,恢复为默认状况,plot后将取代旧的figure 代码: % 提示 disp ('该功能练习hold功能'); %初始化快捷式数组 x=-2*pi:pi/20:2*pi; y1=sin(x); y2=cos(x); plot(x,y1,'b-'); title('sin(x)和cos(x)图形'); %该语句必须在p

Matlab中plot函数全功能解析

Matlab中plot函数全功能解析 功能 二维曲线绘图 语法 plot(Y)plot(X1,Y1,...)plot(X1,Y1,LineSpec,...)plot(...,'PropertyName',PropertyValue,...)plot(axes_handle,...)h = plot(...)hlines = plot('v6',...) 描述 plot(Y)如果Y是m×n的数组,以1:m为X横坐标,Y中的每一列元素为Y坐标,绘制n条曲线:如果Y是n×1或者1×n的向量,则以1:n

Matlab中函数定义方法

Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件,直接定义: n4.匿名函数: n5.Syms+subs:无需M文件,直接定义: n6.字符串+subs:无需M文件,直接定义. ------------ 1.函数文件+调用函数文件:定义多个M文件 % 调用函数文件:myfile.m clear clc for t=1:10 y=mylfg(t);

matlab中的xcorr 自相关函数

转载自 http://blog.163.com/to_be_myself/blog/static/176060227201101762159227/ Matlab中用于计算自相关函数的指令是xcorr.比如矩阵A=[1 2 3]; xcorr(A)=3.0000 8.0000 14.0000 8.0000 3.0000 自相关函数是信号间隔的函数,间隔有正负间隔,所以n个长度的信号,有2n-1个自相关函数值,分别描述的是不同信号间隔的相似程度. 比如,上面的矩阵,最后得到5个结果,其中第三个是自