此文记录了实验过程中会用到的一些matlab
函数
和一些
作图方法
,将持续添加新的有用的函数。
1. ismember
寻找一个矢量的哪些元素在另外一个矢量中出现过,也可以找矩阵的哪些行(列)在另一个矩阵中出现过
2. setdiff
寻找在a中却不在b中的元素(矢量),行或列(矩阵)
3. figure('numbertitle', 'off', 'name', str_name)
figure窗体的名字不是figure 1,figure 2……,可以自己定义字符串
4. figure;imshow(im,'border','tight','initialmagnification','fit');axis normal;
使显示一张图片的时候图片撑满整个figure窗口,没有空白边界区域
5. set(0,'defaultfigurecolor','w');
改变figure默认背景颜色为白色,之前系统默认是灰色
6. set(gca,'XTick',[1:1:5]);
改变X轴坐标间距
7. set(gca,'Position',[l b w h]);
改变坐标轴的位置,l、b、w、h分别表示左间距、底间距、宽度和高度
8. axis([a b c d]);
改变坐标轴刻度范围,x轴[a,b],y轴[c,d]
9. round
四舍五入函数
10. ceil
上取整
11. floor
下取整
12. unique
去除重复元素(矢量)或者重复行列(矩阵)
13. intersect
交集,矢量的元素,或者矩阵的行列
14. union
并集,
矢量的元素,或者矩阵的行列
15. bwboundaries
二值图像的连通轮廓
16. sub2ind / ind2sub
a=zeros(5); i=[2;3;4]; j=[1;4;2];
a(sub2ind(size(a),i,j))=1;
17. randperm
将1~n的数随机排列,我一般用来从数组中随机取出某些数
18. boxplot
画盒状图
19. errorbar
误差棒状图
20.想要改变legend中的顺序,可以先获取句柄再重新生成legend
假如figure上已经绘制好了2条曲线,那么
h=get(gca,'children'); legend([h(2) h(1)], 'label2', 'label1');即可
21.cumsum
累加求和,分别求每一列前1、2、3……、n个元素的和
A = [1 2 3; 4 5 6];
cumsum(A,1)
ans =
1 2 3
5 7 9
如果要求几个元素占总体的90%以上,则可以用cumsum(x)./sum(x)
22.whos
List variables in workspace, with sizes and types
23.改变坐标轴刻度的有效数字位数
set(gca,'yticklabel',sprintf('%03.3f|',get(gca,'ytick')))
24.[x,y]=ginput
用鼠标交互式在图像上获取输入数据
25.坐标轴反转
set(gca,'Xdir','reverse');
26.TABLE = tabulate(x)
用于统计数组x中各个成员出现的次数。TABLE是一个n*3的表,第一列是1到max(x)的整数,第二列是出现的次数,第三列是占总数的百分比