找回密码
 注册
关于网站域名变更的通知
查看: 399|回复: 1
打印 上一主题 下一主题

大神给大家总结的一些常见Matlab问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-27 11:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
; O* F7 E. R7 u6 C
Q:如何在给定句柄的 axis 里绘图?
4 P' U% ~6 e- l0 b) j) S) |3 FA:plot(data,'parent',haxis);; [0 Y0 O. f1 y6 x
或者6 Q9 A$ ~7 _, J- |% _" g
hbar=bar(data);% G+ g( ?4 R' k; \
set(hbar,'parent',haxis);9 r5 E( ?! T9 j
2 t$ s+ I1 z* r9 `6 p

6 u5 L( o# @& c" C/ m% HQ:Matlab 中如何作线性拟合/线性回归/多元线性回归? / Y: C) n! M/ V6 S  I2 B* F! y( [
A:何作线性拟合是用 y=a*x+b 来拟合一组数据{{x1,y1},{x2,y2}…{xn,yn}},matlab 中使用
) s6 f3 c. l  I( g" gpolyfit 2 d! i& p& v& S" Z& H
x=data(:,1);' P; |4 g5 {; e: |. I  P
y=data(:,2);* j% L$ ?. ^) c2 n1 I1 E$ v, Q
p=polyfit(x,y,1);* i9 P& N0 {. g8 F) K' b7 p
p(1)为斜率 a,p(2)为截距 b
( }9 V8 j1 V" {' r; w$ A, |+ e8 ~7 \) S多元线性回归即用 y=a1*x1+a2*x2+..+am*xm来拟合数据点{x1i,x2i,…xmi,yi} (i=1~n)
8 ?! D8 W- x* i|x11,x21,…xm1|
+ h3 `# w% P5 M0 u# o+ }% s4 KA=|x12,x22,…xm2|
, n4 W' G6 N9 w+ L' ~  x|……………   |" K2 a7 s, u" N5 y# p
|x1n,x2n,…xmn|
* N3 g" n# v1 L8 q2 L. W1 B& bY={y1,y2,y3,…,yn}'* n8 `# e+ ^  D& j7 X- {. i
则系数{a1,a2,…,am}'=pinv(A)*Y。
1 Z8 b5 b7 V1 e/ V在 matlab 中使用 coeff=AY 则可以得到最小二乘意义上的拟合系数
7 |3 k0 r2 X6 v3 W ( F3 Q6 z+ _6 b  |% I
Q:Matlab 中如何作二维数据的插值?% s- U2 @" J; n! {
A:对于一维、二维、三维规则数据点阵使用 interp1/interp2/interp3,
; C+ r( o( V  @6 g, ]" j3 K- O) _二维、三维非规则数据用 griddata/griddata3
/ p, w+ I& J# {/ c+ m9 U ' \% \' Q$ y7 u5 c9 @5 U

& W- F- R5 W- [% ]/ e/ \Q:Matlab 中如何计算程序运行的时间?; k9 Y2 }, W4 k( N
A:tic
: u7 Z. x2 G4 Y' D7 \; T2 l8 Byour_code;, M6 E. r8 \, E- h% c' v
toc " O/ Z( \  X/ ^- L3 c: F
或者使用:
, Z! P+ z8 J  k; Z$ b4 St=cputime;  
4 x1 h! x. K% q& A( S$ uyour_operation;  ) U( e- f0 B8 V- p
cputime-t
* f- z$ {, B( _+ D3 L# n6 u/ w9 N- c( u  X3 \) i5 z

* R) o# v$ ~1 L% n4 c# ]' S
6 T$ E, o0 O: J2 zQ:如何在 Matlab 中实现交互操作?2 i; L2 s3 O$ m( o2 U
A:如果只在命令窗口进行交互操作,请参见 demo 中的例子,主要是通过 input 命令和
, L0 |' Y7 S; [$ ?: r7 Wpause/clear/disp 等实现的,还有一些窗口资源可以使用:
+ m* _6 K% u' P5 y4 v5 Iuigetfile, uiputfile, uiwait, uisetcolor, isetfont, uiopen, uisave# q& J0 I4 R, {
inputdlg, msgbox, helpdlg, questdlg, warndlg, errordlg
0 Q7 `1 V8 h) j. N4 }/ `
9 K& N2 a+ r6 _! Q! C: e# u
3 d+ H" l& U& x1 C  X, e, P( S; y' h) |) \  p- p2 v  o  i7 e
Q:Matlab 中为什么只能在小数点后显示四位?
/ d& u% V/ X" C6 _8 oA:用 format 命令来改变命令窗口数字的显示格式和精度,但不会影响 matlab 的计算精度,
6 S4 _6 ?: b2 Rmatlab 的矩阵运算默认都是双精度浮点型运算。, i0 a! T% i9 X0 |& w' |. v

' \& y- N$ |7 i+ e3 A) @) L5 j7 m# [7 D5 V" k* [

( V/ p) p* d: b- U/ O6 d5 Y" r  B6 h8 `; `Q:Matlab 中什么函数可以删除矩阵的某一行或列?* z" Q. g* q5 U: c6 k. X
A:A(j,:)=[];  %删除 A的第 j 行3 g: B0 K/ ^5 N6 R! H( B/ I
A(:,i)=[];  %删除 A的第 i 列5 L  _. r% a; q8 r% z2 q

# q5 n0 e* h+ ~2 n/ {; i
- K# [. n9 m  {7 L& ]9 o* W, f5 ]1 E0 V& C. Z8 Z  E' Q
Q:如何得到 contour线上的坐标点?
  k) o3 H% F( J5 b9 G9 JA:lcount=5;  k& R' h1 G  o
[c,h]=contour(peaks,lcount);
2 O0 J0 p" K# p6 k. Fx=get(h,'xdata');
; L3 h1 q0 U" J" _  m  g1 P, Jy=get(h,'ydata');
5 X6 g& I4 _( @2 f8 P% W/ U, n! ?+ o这里得到的 x 和 y都是 cell 数组,用 x{1}/y{1}来得到每条线上的坐标对,注意,每条线
6 B" O  ?3 j2 g5 T的最后一个数据是 NaN
; q) @, i' \8 I8 R: n 8 r7 @: A/ p5 j8 s8 ?
- T0 g2 b: c, G

: ?$ @8 L- |5 Y+ ~7 z+ l) WQ:Matlab 有没有求矩阵行数/列数/维数的函数?
: L8 F; m. g- o6 W$ T! H; XA:ndims(A)返回 A的维数/ s5 c# `1 G1 R2 W$ ?
size(A)返回 A各个维的最大元素个数& b- ]& y" e% _. k
length(A)返回 max(size(A))- u: C- a# C' [5 a9 z
[m,n]=size(A)如果 A是二维数组,返回行数和列数% I0 N' U& Q5 w0 D; N
nnz(A)返回 A中非 0元素的个数/ O) f4 s1 p" p/ m6 v3 o
/ F6 F$ f4 Y2 d- r" D

3 I) C% Q7 ]* X8 A
# D- q1 Y! n4 I/ s9 G* I* D0 Y# N% Q- T/ W1 F& @- ]4 m' \4 t
Q:Matlab 如何产生均匀分布的白噪声?
" F+ r' _' [' v& f7 RA:help rand  均匀分布百噪声
2 O) U% y5 G! ]% d  ohelp randn 高斯分布百噪声
7 z3 M- d( y% i% t
! h+ c  K4 y2 E; S+ d, |$ O3 t
) M% I2 y% J! L+ o/ ~% ^0 d% s* N
# n- A# _# o6 V5 K& e7 `: V3 f' m
! s( G# J0 l+ `: }
- M& E2 y/ p3 j4 d: {! t0 v9 u0 @Q:请问在 Matlab 中怎样输入特殊符号啊或者上标、下标?
5 C4 A, N$ U) H6 @$ VA:matlab 的 text/title/xlabel/ylabel对象支持简单的 TeX排版语法,如希腊字母,上下标等。9 S8 s! a! L# n: e' _5 Q
例如:text(0.5,0.5,'alpha^beta_2');, \9 ?0 v* A& O: a9 S
' K$ N, S: }/ a  |5 j
* _7 i# E! B/ I; n6 \, k
: m; ~" h& W" ], R  V4 w4 o
Q:Matlab 中如何把向量拓展成矩阵?6 R5 C3 v1 ?* V2 [- s6 C
A:可以使用 repmat(),例如:  repmat([1,2,3]',1,5)7 F' W4 O  |8 I9 g  Y
或者使用 kron(),例如:      kron([1 2 3]',ones(1,5))+ h8 U9 l7 W- o! E+ \8 T

# t( T+ |2 s6 l, |4 E& J& ?4 V# W* q% h
+ _7 c. s8 O) A
7 I; i/ T; Z7 C1 L
Q:matlab 程序运行时如何中止. Y, B, g7 |/ H/ G5 e9 L0 W
A:快捷键 ctrl+C                  强行中止,程序不能继续运行
0 A; c, t- ?: {% }5 y程序中用 pause 命令      自己选择中止断点,可以回车继续运行
) Y' p, A' B! \( o2 l# Q- u- p5 w" Z6 N: z  l4 X& ]2 J5 ^8 y& @

2 Z# S, F0 M# S9 C4 {3 J. YQ:matlab 计算结果为矩阵如何保存和取出
! k6 l2 d  N( l8 WA:save  将当前工作区的变量储存在一个 MAT-文件中: o+ d3 S0 s. d( a& G6 I0 w8 \
load  调出一个 MAT-文件9 w; `3 p+ r  U+ i, q3 y
7 e2 ~8 X+ X/ N( E( y/ K
+ L: D3 n7 o$ y' r1 ~
Q:那位高手能否讲一下 varargin  的具体用法。8 E. g! O! n' d: u& Q' h: I
A:varargin是代表输入的参量,必须作为最后一个参数出现。
7 g% J/ u' x( S+ K% t" v8 l比如:定义函数 varargout=fun(x,varargin);6 z3 t3 N) }' k- A  ?
那么调用时:[A,B,C]=fun(x,m,n,l);9 G0 F! I% N% J5 @8 r
varargin 就代表 m,n,l
/ i  u( c; K7 z& c3 w* r, F3 n
- W, O$ R& J1 s) u/ z8 @' z2 @
% q2 ^8 V9 ]: S( Q
( B. ~& z! P( Z1 d3 X
% m- f( Q6 X# g/ [6 H+ k+ DQ:mean(A,dim)用法?
" A. x6 `2 y% Q2 D% ~! ]A:mean(X):返回向量 X的算术平均值。+ B9 A; e- I* ~  ?0 T2 P4 e8 ]) w
A为矩阵时候,mean(A):返回一个行向量,其第 i 个元素是 A的第 i列的算术平均值。8 m0 m& W9 V; {- u8 e
(比如[a1,a2...an])
% N2 w9 `9 }: `: omean(A,dim):当 dim为 1 时,该函数等同于 mean(A);当 dim为 2 时,返回一个列向量,% Q6 J  p. A* U* ~" h7 O
其第 i 个元素是 A的第 i行的算术平均值。 (比如[a1,a2...an]')# ^8 ^9 i+ a: e$ y+ q2 R
此类问题可以直接 doc mean 来查看! m' n# _7 a7 G7 b
. i7 f1 p2 u; D/ y( z! }
  `8 d/ c- a7 d" k+ Q: F- Q
8 m# h  {- E' W- ?$ U) N) u
119.使用''和 sym 生成字符表达式的区别
  Y: z, r* h$ D5 Z+ B& SQ:例如:' `5 ]- q$ f$ N8 Y9 B7 I
            f1='a*^2/(b-x)';
) @& f' {) C& `( _8 e% Z$ a9 ?. n            f2=sym('a*^2/(b-x)');9 g6 m( l. ]+ G0 y" X
            f1==f2;; c5 a! b0 d- [' [+ K+ E
            ans=1;
0 w) v# S5 K) S0 R- u  \4 N! |             那是不是 f1和 f2 完全相同呢?& w- N, J6 l! H9 {
A:当然,一个是字符型的一个是符号型的
5 f- f0 M1 v2 r( Q, r- }' @7 L' z) q% r' z) t, I) k

) {8 o3 V2 q' q# G7 J" [  L- d+ G2 j5 h/ r

& j' O9 v4 K, R5 b8 _5 B4 w6 Q7 m3 T2.matlab如何自动读入一组数据文件?/ X+ v! y5 c/ Q8 i( e9 I+ |
Q:一目录下有一组数据文件,文件名为 data1.dat,data2.dat,data3.dat,......,dataN.dat
: K& G- O3 z9 J' v: Z由于文件数量非常大,如何让 matlab 自动的按次序读入?# r9 ^6 e& j. ]* ?( y* ^
A:filepath='d:/';
5 m$ {& W% s1 b% Y* ofor ii=1:N5 E5 Z8 a. W1 l! z( l
    filename=[filepath 'data' num2str(ii) '.dat'];/ }! a6 Y. }1 Y" i. J
    load(filename)# C% B- x- r+ k( `9 H, v
end
" ?8 b+ l/ |: ~# f* RQ:好在文件名是 data1.dat,data2.dat,data3.dat,......,dataN.dat,不然难弄,^_^
3 f3 s: ^( x# m% HA:原则上,该是可以将所需量尽量作到一个文件中,逐步读取(fortran 里面系这样的) 。
+ S. h* {% y  P# v- O文件名不一样也好弄,可以用 totalcommander 等软件批量改名。也可以用 matlab 自带的函
0 E/ O: o9 N) V: l, {数把当前文件夹下的所有数据文件的名字都读到一个变量里面,然后 load 这个变量里面的
; P1 P* s# Z6 O9 z' \+ n元素。
6 n0 M3 D; r9 J
1 u4 o7 ?; X% c' d! y9 Z . V- e6 N+ Z3 N7 I- t+ N* D
+ O: y0 C& P2 u/ r( D

$ w% P' j+ d2 I# s, f4 D4 O0 ^! I

0 H$ G  E0 y6 _Q:在 MATLAB 中如何实现两个字符串的相加,例如:'aa'与'bb'的加和为'aabb'?2 m" H+ g) d; @0 H
A:x1='aa'4 j! N/ ]0 d$ x+ H: [" D7 ~
x2='bb'3 w& n5 M! t; W9 ^& ]
x=[x1 x2]
, ]: ~$ G3 O( M4 r3 z% e- vdoc strcat
' V3 }7 w9 v8 K
% \5 v1 K" ^8 {
5 A! D6 p' D! i8 l+ ~如果求点积:dot(a(1,:),a(2,:))2 I* w  N$ C5 \4 \2 X6 ]% V) g
如果求向量积:cross(a(1,:),a(2,:))% z9 Z5 L/ e  Q' u5 J# e/ G
2 X5 x: G# h; D) ~

/ u* O1 E5 h! u* Z+ `- I( o: z* T+ c  A+ S! q+ n, Y
Q:如何用 set 改变 gca 变量中 xtick 和ytick 的属性值
. [, N3 b6 K/ q; ?! Q; l* nA:x=[1 1.53 4]; ( l* W! D: h3 x1 q9 L0 A' I2 Y, Z
y=[1 2 3]; ) |& M; S, |0 r* S0 g
plot(x,y)
0 _% X  |. n7 @; L1 v; Dset(gca,'XTick',x) 2 ?; \: ~& ~9 W2 x- d7 G3 ?
set(gca,'XTickLabel',sprintf('%3.4f|',x))
8 }* Z& P" x1 B* F2 @# v# tset(gca,'YTick',y) 6 A: ~0 d# ^0 u! Q+ u/ I! D
set(gca,'YTickLabel',sprintf('%+1.2f|',y)) # w; M! C3 r. o" \( _
+ s) `% m4 b2 G5 W! K8 t- m

6 J2 \$ ]1 a8 p0 K
. Z: _: _- g" w0 ~! M. R. K - k( z4 R+ N0 o9 {$ K- {& q% m

! k+ h1 y, v! |. ]Q:有关进度条和画图的问题& R7 X1 q. {" f0 r7 i# B- x
A:h = waitbar(0,'Please wait...');5 e3 p5 A6 N) B# U  E9 x/ E( r
set(findobj(h,'Type','patch'),'facecolor','b','edgecolor','b');
' a# E4 @9 r6 C6 l2 Lfor i=1:100, % computation here %
3 r/ W( p1 |3 K. `- V$ C4 C3 ?x=1:100;4 [/ w! K) Z, |5 t) d4 a3 P
y=i+1:i+100;# p# s6 d( D+ R
plot(x,y)
8 t4 \; g- p% Lclose all
8 w" H  K0 W' X5 v8 Qwaitbar(i/100)
% ]/ B! W2 q. t$ Qend
* {0 L* [( W3 _" }7 bclose(h)' q2 z" W! \; _8 Y# q
. ~- b8 ~* a+ \7 v0 c; {
3 @( C$ U' c; z! h8 G
) [3 [+ l+ p4 E# `( }4 Q+ x+ r7 u

, j6 ]) K4 M  g$ |& sQ:在 MATLAB 中如何画灰度图?0 v$ K% v- I, `  v! h
A:如 A为 2 维矩阵2 P- V, b( ^; R9 J; p
figure; imshow(mat2gray(A));8 t! K: q' o  g* U

( s. Q5 B6 {- U1 w' \, T- N/ O( q" g
' l8 f( f* s% D. y6 k$ Y! R; n( p. ^9 O6 f& N8 N4 e' h
Q:matlab 里的图形怎样去掉坐标轴留下坐标单位呢?, i+ z/ p5 N+ p% |% ~
A:一个小例子) W6 [" S# P( A8 a2 Q" S' T9 E
hold on;
# t2 n# A: r' l( Dplot([0,0],[0,1],'w','linewidth',8);
" q! L6 c9 W1 ^1 ?- s' a* yplot([0,1],[0,0],'w','linewidth',8);, V& l- L$ p0 K6 n! W
plot([0,1],[0,1]);2 W2 S( M5 I0 s
box off
& m/ |* I7 ^) n) E6 B" t8 B" Q8 D+ nxlabel('zjliu');ylabel('zjliu')
* G  X! C. c0 L4 o" g# d  e
6 ^) P0 N0 J; g9 U# I
6 E0 Q0 F9 Z) v' }( r0 w% p& H1 W! h7 s& x2 b) p( Q0 A9 `2 }9 i9 i9 p5 ?
Q:Matlab 怎么画三维数据的灰度图?- V# W0 {5 D2 u5 e7 j! V8 B
A:[xi,yi]=meshgrid(x,y);
$ q& ?% Q- S2 r: \; {6 E8 Fpcolor(xi,yi,zi);colormap('gray');
" U4 G- e- ?& i0 y! ]! Bcolormap(flipud(get(gcf,'colormap')));$ ^% O9 b% Q% e  e
meshgrid 的时候分的细一些让他变得精细一些
/ p" ]' G1 {4 v8 P) Q  ^9 ~. v- r& n

- Y& X1 x8 y) ]  F1 _+ s, s2 T  D! e- `! i/ J
; y' c7 ~% {0 R& f

4 Q. X. t6 G( `5 I5 [; t* \& D9 R6 Z1 K1 G2 u
坐标轴问题2 Y9 u1 ^) V  a, H0 F
Q:我想让 x  轴的值从左到右是递减的该怎样实现?还有 y轴是 10 的幂次方递增?" D; o* p: |  @1 v- D+ y
A:plot(1:10)
  P$ g3 _7 w) o- p8 u, dset(gca,'xdir','reverse')
- ]0 l5 u* |6 w% e& v' vset(gca,'yscale','log')$ E- D* v$ i1 p! c3 m6 N: q
此外,可以; b9 `  ~6 t! m
双对数用:loglog()* i- ?2 ~% n0 M# o2 G0 u( M6 H
对 x 轴用:semilogx()
1 a) u/ F' V6 E* S7 E对 y轴用:semilogy()
' O5 O) ]& L: i+ H" Z  H0 f$ p% ^* w5 @$ ]  Y2 l
; o; g" D1 s2 E! A! p& |1 K

' I2 R4 b' z% w2 Y1 \* |3 eQ:请问 matlab 图形中用来划分多少份的那些线能去掉吗
$ Z3 i# d. d3 z, z: cA:shading flat
: ?& S& @& X8 q% M+ C6 Y
5 G4 M/ M3 U' @8 x: h 8 e, P+ k! Q% J
' C0 h2 x3 ]7 s8 N: Y8 J
Q:如何用函数形式设定坐标轴的数据字体与字号$ g) V5 E, |2 B9 v
A:举个例子. V/ e) O, W$ Z) E5 {: C; ^; U
set(gca,'FontSize',12, 'FontName','标楷体')2 ]8 I! U* V- e6 ?% z$ K1 `1 |: U
字体设置属性:
( I4 P' s0 K; [6 B( b( x  }'FontAngle'------  设置字体角度4 h2 L( v, a  F; x' R6 C. |* P
'normal'------  正常; . K- Z0 f# r) w4 z# \
'italic'------  斜体;
2 K& j9 q& j% c! x'oblique'------  倾斜; , F  D+ x: F- B  s& _- N" p5 @
'FontName'------  字体名称; * C$ j0 K: ?  X% g+ B. l' [
'FontSize'------  字号大小
$ e$ y' {. u( K1 V'FontWeight'------  字体的轻重,选项为:'light','normal','bold'
& j) z( ]- |& n; R如何修改图形分格线?
% \  G9 s7 ?; B: o  Q( p用 set 改变gca 变量中 xtick 和 ytick 的属性值
) e4 h% L# h9 W- y* K, d: G. q5 L( {, t, e6 F
$ K. \& `2 ]  u/ p: r! R- f  M
7 D5 Y5 t* X* E* c) c  U" F  U' Z

1 X$ Z! A2 r+ \3 t
, d1 t* x0 I* ^6 N" ]1 B
+ N1 p4 |4 E, q) P$ t2 [& y从一个已经得到的图像中得到其中某个点的坐标' Z1 h0 e" L8 G8 t& }" c- J/ A
Q:点是鼠标选取的,如何得到其中某个点的坐标- D# p3 o1 l0 f7 B+ p5 J, y) I
A:[x,y]=ginput(n)
/ a7 a3 ?3 L4 N+ ]* m! ^) in:要点击的次数
, B& a8 Q; G2 M/ X9 tx,y分别为点击点的 x,y坐标,当 n>1时,x,y为向量) c8 t% D" h3 e( P* i$ z8 D

/ g* }; `; H. D3 F! z
' h# V2 G* [" a& a' Q' K/ s$ W( A# e用 matlab 画圆,且标记刻度* y) u, ]8 R6 m: R
Q:其中圆自最顶部以 0°、15°、30°、……330°划分,并以数字标明其中得 30°、60°、) r7 _; e  C" o1 C( z& a+ z
90°、……330°。  或者怎样用 rose 命令或 compass 命令实现。( T/ P, s8 o4 z3 M+ S8 o' a- c: l
A:用 polar画吧,rose和 compass 画的不是你要的图
. V: W: P: m% ~# v: _; [theta=linspace(0, 2*pi);  a% }4 C3 Y7 l; B) `8 u
r=ones(1,100);& f1 X7 I" p9 {% v
polar(theta, r);
8 `. o+ f( I* ^# n! Y$ U+ R8 j; K& k5 i, G) v

6 W# z5 o; y) {! f0 a# L! P, R2 W0 x1 r3 g* e* `  Y5 b
! u" ]$ ~1 v; J* ~
5 }, g! S; M+ @& E$ t" y" c
如何控制二维图的坐标刻度不是等刻度7 X* j+ g3 D. ^6 t0 {
Q:我画了一个二维图,可是 x 轴总是等刻度比如 1,2,3,4,5,我想把它变成等比刻度,! j+ J4 r5 C  d
比如 1,2,4,8,16。matlab 可以做到吗?如何做?9 O1 ?* Y& _- h5 Z' Z7 S' @
A:用 axis 命令可以改变坐标轴的刻度,如果想改成等比刻度,可以对原数据取 2为底的对
6 D9 |! a* E* z1 S& r  ]6 V6 `4 J数。, ?. P5 @, }2 ]
Q:能不能给个例子?我想把 x 坐标的刻度变成平方形式,1,4,9,16,25,36,49,……,
" ]( A6 j. l# \4 J我看了帮助还是不会用
, _+ S) S% E5 w# v6 R+ ~( C( JA:两种不能同时实现
$ |2 v8 N% z, o& x+ [第一种,变刻度4 M$ s1 S5 J+ F# w2 g
t=0.1:.1:20*pi;/ c5 L7 o+ X. x
y=sin(t);
+ `1 F8 U( H( i3 qsubplot(2,1,1)
" A1 v/ e: J8 splot(t,y)
, B! h3 \  c# `. g8 w, Fsubplot(2,1,2); }2 v4 N7 g; D
plot(log2(t),y)
  V. [2 Q3 d) J) T5 D第二种,坐标显示% A" D4 Q2 h; S8 K% l2 m. V& X
t=0.1:.1:20*pi;: A' {# _1 q9 o1 [2 S4 N
y=sin(t);
% M/ n0 r6 X- S8 P$ \$ e4 zsubplot(2,1,1)
% [! q; c2 R$ M& r/ y3 c% }9 ]plot(t,y)# h& ~: w2 ~& H" t2 \" b
subplot(2,1,2)( f: e+ ~: A' D2 X2 U! N- d
plot(t,y)$ V3 b2 ^& @4 X, v0 z2 S4 S
t1=(1:7).^2;6 }! J& w8 W0 T5 t; B
set(gca,'Xtick',t1)
6 O+ l' c: f7 v
) b6 W4 |# h7 w  H ( {  C- A/ s5 e. ^- g
& g" z; u' R$ ~8 U' ^: i) ^
52.如何将两个图片同时导入一个界面
' R- A5 ^2 M" \+ J& b" OQ: 我现在需要在同一个界面中导入两个图片, 如果设置图片文件分别为 a.bmp 和 b.bmp,  界1 f$ d% g3 @) t) y, {! a
面上是 axes1和 axes2,开始函数中有以下语句:
# t" B. b& B3 g4 p; o- l0 Y7 ?imshow(imread('a.bmp'));
$ A/ k6 \. V. a$ cimshow(imread('b.bmp'));
' r! g/ }: o" |4 k" ~* v9 e2 V3 T- X这样只会在 axes2 中显示 。请问如何加上修改句柄的语句,使 axes1  axes2  都显示图片
! f% F- w! a" Q0 p4 C0 v' {2 tA:subpolt(1,2,1);7 g* l5 u* K) K
imshow(imread('a.bmp'));%image也行
% C, Z! a& f1 O# n, [/ osubplot(1,2,2);
6 w9 t3 V5 {. z1 \& s& }0 \( n0 [& ximshow(imread('b.bmp'));$ U5 a% I* r2 ?; L. T- o' h  p% D
# [6 H( m8 m, e1 [5 r
! ~; [4 u% v. z# S
, I' D. Z# n8 b
+ N3 U, n+ a5 Q' q$ J
53.如何使 matlab画出来的图和坐标图一样?3 u5 e% o' @4 A2 O1 \
Q:使用 plot函数画出来的图,总是在一个方框里面,四边都有刻度,可是我只想要 x 轴和( h5 }0 |: w# C+ ^! l' w/ E+ V0 f
y轴两个有箭头和刻度的坐标轴,并不需要另外两边,我应该怎么做?/ G5 a9 {8 b3 v7 l+ E
A:set(gca,'box','off')
$ ]/ v7 R7 ?; v+ R( Z" L
) x3 ?4 q$ t2 V
" `6 A0 B7 w0 B# ~3 M% H; N" n/ K6 G+ v( K  I
, D) U1 {* O" m) x' w. v2 K
8 a: f/ O5 ~9 u( w
关于 LISTBOX 与 PUSH BUTTON的问题% b+ ]1 ]  C+ ?" _7 ^: v7 K
Q:要实现:选择 LISTBOX 中任意一项,然后点 PUSH BUTTON后,相对应的执行一个文/ V8 J. D! B; z* E$ p$ p/ g
件。那么 PUSH BUTTON 的 call back该如何编写呢?( p  C# L/ Y2 O) k' i
A:callback中你要实现什么就写在一个 m文件中,然后回调这个 m文件就行了。listbox 中
0 k9 x7 L; v7 L3 X的选择可以根据 value 的返回值来判断。4 w$ h5 P1 v0 v2 S, D2 p& T
7 r$ |9 Q, W  x$ Z% f! u
8 ]- L  [' f8 C/ ?- Y/ I1 r/ Y1 [4 t
  • TA的每日心情

    2019-11-29 15:37
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2020-3-27 18:16 | 只看该作者
    里面的问题和答案都好详细啊
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-23 03:44 , Processed in 0.109375 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表