matlab安装、运行与其他问题集锦,希望对大家有用。 .4Qb5I2#
%n05Jitl
Q1:matlab有没有监视内存的方法? URYZV8=B~
W/ g|{t[
A: 用函数whos。 tYs8)\{
\G$QNUU
Q2:如何解决matlab7.0命令窗口跳出一大堆java错误... qDnCn H
n1QEu"~Zj
A:换matlab 7的sp2。 #K=b%;>
bz{^ h'
Q3:自从安装matlab,一开机就在进程里有matlab。 LH=d[3Y
-7>^
rR V
能不能开机的时候进程就不运行matlab? I&L.;~
)v%l0_z{
A: 开始-->控制面板-->管理工具-->服务 AL>c:K)qO
I@n*[EC
把MATLAB Server的属性改成“手动”就行了。 &Nc[$H7<
<7=&DpjI7F
Q4:退出matlab7程序运行的快捷键。 (VgNb&Yo9
QVIcb;&:}
A: ctrl+q gjW\
XY
X<(6T
Q5:matlab7远程控制是否有限制? Q |
$hh+0hs
A:不能远程控制,不过你可以先在你的remote机器上打开,然后就可以用了。 <57g{e0I
Da-u-_~
Q6:Matlab占用资源太多怎么办? 1p8:.1)q
]>5T}h
A: 用matlab -nojvm启动(如果不需要图形界面)。 zhNQuK,L
}FrEF\}]_7
Q7:怎样给matlab添加新的toolbox? ]?[zx'|
?TDvCL
A: 在matlab的文件菜单里边添加路径,选set path。 R7lYu\mA
v@VLVf)>9^
Q8:请问matlab有没有命令可以调出历史输入啊? i8K_vo2Z)
(Aorx #z
A: command history 窗口。
6DB0ni
o&~dGG4J
Q9:matlab 7.0 不能在64位的cpu下运行? Y?<)Dg.[
9I85EcT^4"
A: matlab 应该是依赖于自己的虚拟机的 KyT uF
H"eS<eT
但是好像这个虚拟机是在 IA32 里面作出来的,所以,应该找个带 64 位的 TN5>" ??"
B`i$Wt<7
java 虚拟机替换原来的,不过不一定能行 or so,记不清了) H
nK!aa
lr,q{;
Q10:matlab有没有注释一段的功能? I?B,sl_w
6
Ew@L<v
A: 选中一段代码,ctrl r就是区段注释 Pb#P`L7OB
wTxbDT@ H5
选中一段代码,ctrl t取消区段注释 8) HBh7/
H<g 1m
Q11:今有WINDOWS版MATLAB7,启动时只出现版权画面,然后进程结束。 P>(&glr|
Qlw>+y-i
A: 用matlab -nojvm可以启动,但是报了OpenGL错误的信息,估计是显卡比较 2HD:JdL
F>*{e
差或驱动程序不好。在显示属性里关闭硬件加速即可。 Zae.MO^C!
\^jjK,OK
matlab常用命令参考 Goxl3LS<
zVw:7-
1、学会用help和doc函数。 Vz{>cSz#
pe.Ml7o"
2、输入输出文件:save/load eTT)P
S`0NPGn;@[
在屏幕上显示文件:type 5Q W}nRCZ
|#k@U6`SG
3、解线性方程组AX=B:X=A\B M7rIi\4K4
:|rPT)yT]
4、作图时两张曲线合并:hold on或者subplot作子图 nq1
'F
/&r|ec5
5、程序计算时间:tic,toc或者clock M*w' 1fT
sef]>q
6、变量显示方式更改:format long/short/bank... nBkh:5E5%
&kzj?xK=(j
7、数组元素求和:sum (!3;X"l
A|L'ih/
8、求数组长度:length #Y2i*:<
3@_Elu
求矩阵维数:size或者ndims 矩阵元素个数:numel {]^O:i"
22&;jpL'?
9、函数作图: z8"7u/4v{
xR?V,uV'$&
饼图:pie/pie3 误差图:errorbar 散点图:scatter/scatter3 [*Uu#9
i7 w(S3a
直方图:hist 函数图:fplot 动画:movie |0g{"}%
KnGTcoXg_
10、矩阵分析: MLr-,
"gs
-R
b{^/
左右翻转:fliplr 上下翻转:flipud 转置:transpose x6W`hpL
z=g$Exl
矩阵求逆:inv 矩阵范数:norm 条件数:cond $=)gpPT
G69GoT
初等变换:rref 特征值:eig/eigs iX "C/L|JN
9AQxNbs
11、特殊矩阵: 3TS_-l
g9~]s9
元素全为1的矩阵:ones 元素全为0的矩阵:zeros cj$d=k~
/<{: I \<
单位阵:eye 魔方阵:magic u5+|Su
#+k*1Jg
线性变化数组:linspace 聚合矩阵:cat/horzcat/vertcat ac8P\2{"
iOCqE 5d3
12、随机数: V 1/p_)A
-1u9t4+`
创建一个元素服从均匀分布的随机数数组:rand ~Lz%.a;o
nB5zNyY4
创建一个元素服从正态分布的随机数数组:randn GpI!J}~m
Lja 7
二项分布:binornd 指数分布:exprnd F分布:frnd t e,[f
ba@ctkCW
几何分布:geornd 超几何分布:hygernd 泊松分布:poissrnd @7<uMasfp
69G`2_eKCp
正态分布:normrnd 离散均匀分布:unidrnd 连续均匀分布:unifrnd Qdf=XG5
yN6>VD{F
13、清屏:clc 清理内存:clear UbamB+QT
S/tIwG
~e3
14、字体显示变更等:preferences }H"kU2l
IzLQhDJ1
15、得到一个文件夹的所有文件名:ls U;q];e:,=}
B9,^mE#
16、语句太长的话可以再句末加...换行。 T'H::^9:E
&(N+.T5cp
matlab与其他软件调用问题集锦 SF*n1V3hx
8}s.Fg@tE
Q1:如何在c++里可以调用matlab6.5的数学库? $I9qgDJ)
EYX$pz(x;
A: 6.5版的第三张cd里的cppmath_ug2b.pdf、cppmath_ref2b.pdf 0#cy=*E
N<(.%<!
比较详细的介绍了Matlab C++ Math Library alq%H}FF
%9oYw9H!
Q2:matlab的库能生成c代码吗? F4L;BjnJ
p< "3&HA
A: 库就是compile过,等着被其它程序link的, "vZ!vt#'Y
$~;D9
即能得到效率又能隐藏算法,都放在matlab安装目录的\extern\lib;\bin\win32 *%/~mSx
Yz$3;
下面要看算法的话,就查阅help,一般会简单地介绍下算法,或者用到的文献什 s?R2B)a
^BQrbY
么的。库是帮你写好的算法,用就可以了:) n\z,/'d"
Uyx!E4pl(
Q3:关于matlab中的xlsread函数 7R!5,Js+
6/V3.UP-
A:这个函数可以读出excel数据。先把excel里面数据复制粘贴到记事本, qqrq11W
?';OD3-
再textread进去。 ,\2:/>2
G uQ=gN
Q4:请问如何在matlab中插入c代码? z7GTaX$d
3jB$2: #
A:需要把c代码编译成mex文件,需要把c代码编译成mex文件。 ' Z0r>.
RPd}Wf
6.5版的第三张cd里的apiext.pdf、apiref.pdf介绍了怎么把c代码编译成mex。 7\FXz'hA
I`KQ|h0%
Q5:如何将excel数据导入matlab? UhA"nt0
VA*y|Q6
A: ExcelLink。 ,<BbpIQ2o
2_vbT!_
Q6:java如何和matlab互相调用? LJk%#yV|_
K*UgX(xu4P
A: matlab环境(完整环境)内置了java虚拟机,所以普通的java类都可以在matlab环境 ,1OyN]f3
w}Uhd,
中直接使用。 J:&[59
EnOU?D
事实上matlab很多程序例如界面,还有数据库借口,都是由java创建的。 MUfG?r\t
2MZCw^s>
关于java与matlab数据的交互,帮助上讲的比较清楚。 l2N]a9bq@
$/!{OU.t`
matlab插值与拟合问题集锦 >h0-;
`W/sP\3
Q1:就是给出几个点,要求一个给定阶数的多项式,使他最接近这几个点。类似?[0m "BX!
/|6;Z}2
线性回归。 3gd&i
J{^RkGF
A: [a,S]=polyfit(x,y,n) GFr|E8
jck}" N
[ye,delta]=ployval(a,x,S) Y"A/^]
.{y
uo{u
%a为所得的多项式系数 pPd#N'\*
5j~$Mj`
Q2:如何做最简单的一维拟合? _6ay-u
a!O0,y
A: yy=spline(x,y,xx) @E:,lA
xhcK~5C
matlab图形与图象问题集锦 p<M\U"5Ye
Um&(&?Xf
Q1:比如一个函数C(x,y,z),想做一个3维等值面图,该如何做? !%$`Eq)M^7
*/|BpakD<
A: help contour3/help uicontrol 在plot出来的figure上做个小控件吧。 s%<eD
pb~pN
Q2:请问怎么把MATLAB里用程序实现的动画导入到Powerpoint演示呢? g<~Cpd
h@a+NE8
A: matlab有avifile,getframe,addframe,pause等做avi动画的函数的。 W.kM7z>G
-[-wkC8a
做好的avi放在ppt,如果要暂停之类的功能,是ppt或者播放器的事情了。 L|p
Z$HB
O{#=d
matlab提供了com组件来和其它应用程序进行通信在ppt里写个vba调用matlab。 n=[/Z!
qvPtyc^fN
细节可以在help文档里查找vba和com关键字 ~6p[El#tS
jy'13G/b\
Q3:我们可以用subplot画出两个不同的曲面图,那怎么样才能使得这两个曲面图 G37U6PuZi
YpqrZWvh
各自用到不同的颜色对照表呢?如果画完一个然后用不同的colormap, -Z's@'*
%n*-VAfE\
两张图会变成一样的。 8YbE`32
EY tQw(!Q
A:如果是曲面图的话?atch对象或者surface对象自己有颜色映射表的。 M3q|l7|9
z*-2.}&U<
其实说白了,colormap也是对颜色的索引罢了,例如surface对象而言,也就是第 b9!FC$^J
L*:jXmUM_~
三位的颜色表。支持的形式有两种:索引以及RGB直接表示.采用第二种就可以解决 rW=Z>1
0=?<y'=
这个问题.毕竟对于figure对象而言,colormap没有太大的意义. ?nL.w
A,a.8!*}vd
以下附实现的方法,以供讨论: (见合集2005年之38) :8OZ#D_Hl
;n
7/O5M|
原理是通过改变caxis的值。 :5{wf Am
%\:[ o
Q4:虽然用subplot可以在一个窗口中显示多幅图像,但是每幅图像之间有较大间距。 ,k;^G><
=
;5)P6S.D
现在想让多幅图像紧挨着显示(比如说2行两列共4个图像),该如何实现? Om5Y|v"*
o7$'cn
A: subplot('Position',[left bottom width height]) .nVa[B|.
`7r@a
或者axes('PropertyName',PropertyValue,...) R#I0|;q4|p
-[wGX}}
Q5:matlab 怎么画球? va0{>Dc+
I "A_b}~*}
A: sphere函数。 Y/*mUS[oa
,=[?yJy
Q6:matlab由图上直接取某个值命令? s6@DGSJ
R21b!Pd\
A:ginput。 o{y9r{~A
=Lf,?"S
Q7:请问用什么命令可以让figure窗口中的图形输出到指定的文件中? ^y<<>Y'I
'2 PF
图片数量很大。 ci?qT,&
md"!33 @
A: print和matlab 的 notebook 功能 a m|F?|1
JPoN&BTCj
Q8:怎么能让一个plot命令执行完了以后重新开一个chart window画下一个图? SMpH._VFeE
v]B3m
A: figure。 A\HxDIU
+nJgl8'^y
Q9:请教matlab坐标不等距画图。如果坐标轴上标的量希望不要均匀应该怎么操作? |Uc_G13Y{D
YTUZoW2
A: semilogy/xtick,ytick。 $\X[@E S0
,g2ij
Q10:如何在matlab中接摄像头自动获取图像? M`,)w i
tp6 3@L|Q
A: 比较简单的是调用现成的Activex、Com控件来完成,缺点是至今无法编译。 ~f$|HP}
*%%g{
3$
第二种是自己写硬件接口,优点是可以编译,并且自定功能,缺点是耗时。 ^\4h<M
Z{]0jhUyNh
Q11:请问matlab绘图能有动态效果吗? 3h$6t7=C
.y!<t}
A: 延时、清屏、重画。ing like that 1;Ou7T9w
E2R&[Q"%
如果闪烁的话打开double buffer _( {hc+9p
zh8nc%X{
高兴的话还可以做成avi movie(frame2avi or so) Y 0d<~*
W3MJr&p
还有慧星图 comet snobT Q
S[PE$tYT#t
Q12:怎么样更改colorbar中的字体? Rh_np
L ~lxXTG\
A: colorbar说白了就是一个axes对象. g?z/2zKR
X= 5xh
这样:了傅幕按蚩猟ouble buffer 5Co
A kC1z73<
ColorbarHandle = colorbar ;(frame2avi or so) Azl&m