1、matlab设置默认路径

在原来的默认路径(bin)下创建一个名为startup.m的文件,内容为相对路径

        cd ..\..\WorkSpace\

或绝对路径

        cd F:\Program\MATLAB\WorkSpace\

即可。再次打开MATLAB时便会自动执行startup.m文件,将工作路径转至WorkSpace下。

2、画图

例程:

figure;            //画图,通常可以为figure(1),figure(2).....
X = 0 : 5 : 5*15; //设置数组,起点:间隔:终点
for n = 0: 5 : 5*15 //for 循环,起点:步长:终点 输出包括终点
plot(X, n, 'r.'); //画点,以X为x坐标,n为y坐标,颜色为r,类型为.
hold on; //每次画完一个点保持
end //for循环需要end来结束
axis([0 75 0 75]); //设置坐标系的长度
set(gca, 'Xtick', [0: 5: 75]); //设置X坐标系的步长
set(gca, 'Ytick', [0: 5: 75]); //设置Y坐标系的步长
axis square; //设置坐标系为正方形
grid on; //显示出栅格

3、画圆

function DrawCircle(x, y, r)    //定义函数,没有返回值,参数为x,y,r
seta=0:0.001:2*pi; //画圆的参数步长0.001
xx=x + r*cos(seta);
yy=y + r*sin(seta);
plot(xx, yy, 'b');
hold on;

4、计算交点

function [X, Y] = GetXpoint(x1, y1, r1, x2, y2, r2)            //函数返回为[X,Y]
syms x y; //syms定义两个变量x,y
[X, Y] = solve((x-x1)^2+(y-y1)^2==r1^2, (x-x2)^2+(y-y2)^2==r2^2); //求解两个方程;注意中间为==
if isreal(X) && isreal(Y) //检测两个是否都是实数
for n = 1:length(X) //循环从1到2 注意这里的数组从1开始
a = double(X(n)); //把值转换成小数的double型就可以同text输出
b = double(Y(n));
str = sprintf('(%.2f,%.2f)', a, b); //和C一样把a,b按固定格式输出到str
text(a, b, str);
hold on;
plot(X, Y, 'r*');
hold on;
end
else
return;
end
end
  • 调用了solve函数的返回值都是sym类型,不能直接使用,需要自己转换成数据类型
function X = dealPoints(ps) %X为返回矩阵;ps为输入矩阵
[rows, cols] = size(ps); %通过size得到ps的行长和列长,第一个为行数,第二个为列数
x = double(0); %定义x和y
y = double(0);
for i = 1: 1: cols %按步长1遍历列长
x = x + ps(1, i); %得到和
y = y + ps(2, i);
end
a = x / cols; %取平均
b = y / cols;
X = [ x / cols , y / cols]; %返回X
plot(a, b, 'r*'); %画点
str = sprintf('(%.2f,%.2f)', x / cols, y / cols);
text(a, b, str);
end

计算二维矩阵的大小有好几种方法,比如size,numel,lenth等等。但这几个函数有各有不同。
[a,b]=size(A)的计算结果是a表示矩阵A的行数,b表示矩阵A的列数。
s=numel(A)的计算结果是A的元素总数,对于二维矩阵而言相当于size结果中的a*b
c=lenth(A)的计算结果是取矩阵A中的行数或列数大的那个。相当于size中的max(a,b)

Matlab工程的更多相关文章

  1. Matlab使用新发现1(小技巧:shell 命令、工程工作目录设置相关)

    最近在调试一个基于Matlab的程序,在偶然间发现了几个比较有趣的技巧,给大家分享一下(很可能是太菜鸟了,没有涉及这方面,大方之家请勿见笑,对您有所帮助请点赞!) 1. Matlab语言是一种解释型语 ...

  2. C#与MATLAB混合编程

    C#和MatLab的混合编程,充分利用了winform的直观显示和matlab的强大计算能力.在此以一个小例子的形式给大家讲述一下二者混合编程的实现. 一.软件的配置说明 C#版本:VS2010 ma ...

  3. 史上最全的Matlab资源电子书教程和视频下载合集【超级推荐】

    收藏吧,网上搜集的,费了老大劲了,推荐给有需要的人,^_^.   MATLAB课件2007北京交通大学.zip 4.87 MB   A Guide to MATLAB for Beginners an ...

  4. 人脸对齐matlab实现-FaceAlignment 3000fps

    前言 最近研读了孙剑团队的Face Alignment at 3000fps via Regressing Local Binary Features这篇paper,基于matlab进行实现. 实现原 ...

  5. 一些matlab教程资源收藏,使用matlab编程的人还是挺多的

    Matlab教程专题资源免费下载整理合集收藏 <MATLAB从入门到精通>高清文字版[PDF] 103.9MB 简体中文 <矩阵实验室>(Mathworks.Matlab.R2 ...

  6. Matlab 2013a 和 VS2010 混合编程

    最近由于项目需求,某项目的算法是基于MATLAB完成的,在短时间内需要去调用算法功能.因此,基于MATLAB生成DLL, C 调用的方式完成. 环境:MATLAB 2013a + VS2010 + w ...

  7. 更改 MATLAB 默认工作路径

    步骤: 1. 以管理员身份打开记事本,然后打开 MATLAB安装路径\MATLAB\R2010b\toolbox\local\matlabrc.m 文件,即打开安装路径下的 matlabrc.m 文件 ...

  8. MATLAB 提取图片中的曲线数据重新画图

    注意: 本代码是由[MATLAB R2015b win 32位]编写. 先上代码: %% 清空变量 clear all; clc; %% 取点之后趋势是对的,也就是点与点之间的比例是对的,但是每个点的 ...

  9. matlab混合编程向导(vc,vb,.net...)

    一.matlab与vc混编  1.通过mcc将matlab的m文件转化为cpp,c文件或dll供vc调用:     这方面的实现推荐精华区Zosco和ljw总结的方法(x-6-1-4-3-1和2)  ...

随机推荐

  1. Wheel ProgressBar 实现之三——模拟进度过程

    1. 效果展示: 知道如何画圆弧,如何精确画出进度文本之后,我们将进入 Wheel ProgressBar 实现的最后一个过程:模拟其动态呈现过程.如下图所示,初始时显示进度为 0 (上图),点击进度 ...

  2. 模块化的JavaScript

    我们再一次被计算机的名词,概念笼罩. backbone.emberjs.spinejs.batmanjs 等MVC框架侵袭而来. CommonJS.AMD.NodeJS.RequireJS.SeaJS ...

  3. C#核编之System.Console类

    顾名思义,Console类封装了基于控制台的输入输出和错误流的操作,下面列举一些System.Console类常用的成员的,这些成员能为简单的命令行程序添加一些"情趣",例如改变背 ...

  4. beforefieldinit释义(3)

    1.看下面的例子: public static class MyClass<T> { public static readonly DateTime Time = GetNow(); pr ...

  5. HDU 1021 - Fibonacci Again

    找规律,分析让 F[N] 每一项对 3 取余的余数: 1,2,0, 2,2,1,0, 1,1,2,0, 2,2,1,0, 1,1,2,0, 2,2,1,0 ......... 显然循环了 #inclu ...

  6. C++ 动态分配类对象

    1.概念 在C++中,类的对象建立分为两种,一种是静态建立,如A a:另一种是动态建立,如A* ptr=new A:这两种方式是有区别的. 静态建立一个类对象,是由编译器为对象在栈空间中分配内存,是通 ...

  7. Lazy evaluation

    是一段源码,关于Lazy evaluation的,看了很久才懂,记录一下 一,lazy方法返回的比较复杂,一层一层将其剥开. wraps(func)跳转到curry(update_wrapper, f ...

  8. Swift笔记01

    变量使用var 来声明,常量是所有let ,变量名没什么限制 中文表情都可以 ,一般还是使用英文. var str = "luoshuai "  //swift语句后面不需要; l ...

  9. 使用正则表达式限制TextBox输入

    /// <summary> /// 使用正则表达式限制输入 /// </summary> public class TextBoxRegex : TextBox { // 正则 ...

  10. Delphi 实现任务栏多窗口图标显示

    uses Windows; type TfrmLogin = class(TForm) end; implementation {$R *.dfm} procedure TfrmLogin.FormC ...