Clf‘为:清除figure窗口中的内容,并不关闭figure窗口;
Figure …为:打开一个新的figure窗口;
Close …为:关闭一个figure窗口;
Close all …为:关闭所有的figure图形窗口;
Title(‘标题‘)…为:为图形输入标题;
Text(x,y,?文字?)‘为:在figure窗口的(x,y)坐标处输入文字“字符串”;
View(2)…为:把图形跳回到二维显示;
View(3)…为:把图形跳回到三维显示;
Grid on …为:显示栅格;
Hold on …为:保持当前figure窗口图形;
Xlabel(?文字?)、ylabel(‘文字’)、zlabel(‘文字’)‘为:定义X,Y,Z轴;
Axis(‘square‘)为:使得XYZ坐标长度相等;
Axis([a,b,c,d,e,f]) ‘为:定义a Plot(x,y,?:dm?) …为:作xy图,线性为虚线(“:”),标记为菱形(“d”),颜色为洋红色(“m”); p=Polyfit(x,y,m)‘为:用m项式拟合x,y数据; xi=1:0.1:10 yi=Polyval(p,xi)‘为:求得多项式p在xi内的值,并且赋值给yi; 定义一个inline函数:>>fun=inline('x^2+5','x') fun = Inline function: fun(x) = x^2+5 >>fun(4) ans = 21(或者写成:feval(fun,4),结果也是一样的等于21) 定义一个匿名函数:>>fun=@(x)x^2 fun = @(x)x^2 >>feval(fun,5)‘用feval函数求相应的值; ans = 25 返回函数的最大最小值: >> y=[5,7,8,33545,0]; >> max(y) ans = 33545 >>min(y) ans = 有关figure的相关函数: (1)在figure窗口输入数据: Gtext(‘字符串‘)…为:在figure窗口处插入相应字符串; gtext({'我爱你!','i love you !','jtame'}) ‘为:一次性分三行在figure输入:芳~我爱你! i love you ! jtame gtext({'我爱你!';'i love you !';'jtame'})…为:分三次在三个地方输入:芳~我爱你!i love you ! jtame (2)在figure窗口提取数据: >>Ginput‘在figure窗口中选区任意个点,在按下回车键后返回点的坐标值; >>[x,y]=ginput‘在figure窗口中选区任意个点,在按下回车键后返回点的坐标值给 x,y; >>[x,y]=ginput(4)…在figure窗口中选区4个点,在按下回车键后返回点的坐标值给 x,y; >>[x,y,button] = ginput() …返回x和y的坐标,以及button值(1=左键,2=中,3=右)或者按 键的ASXII码值。 >>Clc…为:清除窗口并且光标回到原始处; (3)提取图片中曲线的数据: 如图: 假设图片保存在D盘,图片名字为:一般图像.jpg,jpg格式。 打开matlab,如下输入: >>y=imread('d:\一般图像.jpg');%读取该图 >>imshow(y)%显示该图 >>set(gcf,'outerposition',get(0,'screensize'));%使该图显示最大化,便于取点 >>[x0,y0] = ginput;%利用鼠标取点,按回车键结束。这个时候应顺序点取图中坐标轴 左下,左上,右上,右下四个点。 >>[x1,y1] = ginput;%开始撷取其中一条实线上的点,按你需要的精度,点取任意多的点,回 车结束 %因为位图的屏幕坐标是从左上角为坐标原点开始的,需要做些变换: >>x1= (x1-min(x0))*350/(max(x0)-min(x0))+375;%如果坐标原点不为0,则需在该轴加上 省的坐标轴数(此处为x轴加上375);350是图像轴的标长; >>y1=(y1-max(y1))*3.5*10^5/(min(y0)-max(y0)); %y轴做同样的处理; >>plot(x1,y1,'k.','Markersize',5); %画图,设置为黑色的点图 >>axis([400,700,0,350000]);%定义坐标范围 >>set(gcf,'outerposition',get(0,'screensize'));%使该图显示最大化,便于观察 另外一种方法: 如图: im=imread('D:\一般图像.jpg');%读入图片 [y,x]=find(im==0);%找出图形中的“黑点”的坐标。该坐标是一维数据。 y=max(y)-y;%将屏幕坐标转换为右手系笛卡尔坐标 y=fliplr(y);%fliplr()——左右翻转数组 plot(x,y,'r.','Markersize', 2); disp('请在Figrure中先后点击实际坐标框的两个顶点,即A、B两点.'); [Xx,Yy]=ginput(2);%Xx,Yy——指实际坐标框的两个顶点 min_x=input('最小的x值');%输入x轴最小值 max_x=input('最大的x值');%输入x轴最大值 min_y=input('最小的y值');%输入y轴最小值 max_y=input('最大的y值');%输入y轴最大值 x=(x-Xx(1))*(max_x-min_x)/(Xx(2)-Xx(1))+min_x; y=(y-Yy(1))*(min_y-max_y)/(Yy(2)-Yy(1))+max_y; plot(x,y,'r.','Markersize', 2); axis([375,725,0,350000])%根据要求设置坐标范围