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

Matlab progressbar

[复制链接]
  • TA的每日心情

    2019-11-20 15:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-7-31 13:42 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

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

    x
    如果matlab在运行需要很长时间的程序,或者是要循环很多遍的时候,用户就不知道程序运行到了什么地方了。每次输出循环变量i是一个办法,但太丑陋了。Matlab提供了waitbar函数。简单运行如下:( m4 x. z% Z( T% c1 u  v  {
    h = waitbar(0,'Please wait...');
    3 W2 i  I0 |8 J$ J. w9 on = 1000;( l: O4 v$ n% Z( O
    for i = 1:n
    ) ^5 b/ Z0 V/ j! B9 M% m8 x* |    pause(0.01) % Do something important0,! X- R9 l& q& r+ n- ]" B
        waitbar(i/n,h)
    $ i$ @4 V- z! cend
    , r1 R( E9 V6 N5 J4 c
    5 U, d$ y4 f3 ~0 }
    & P  Y: j! r/ F$ t9 M5 @
    7 w- y1 k/ P, t' B7 }, b% O9 `5 m' |3 _2 N- u
    这个函数有三个缺点:) _2 _/ X0 m: i! R* T
    1. 没有显示完成的百分比
    ! X7 \' s3 C0 A0 V4 p4 t2. 没有显示剩余完成时间
    ' K: M8 \/ @+ D# V: s  a* t3. 中途无法关闭waitbar% T+ b' a" ?: [2 k: l+ M3 j/ O
    3 t2 S( a/ m9 h' A8 f, `
    有人改进了这个函数
    # C# y' }1 x8 i6 i6 Y% _9 _5 G
    7 s: a7 x. d+ s4 ^' _9 d1 f6 wclear all;n = 1000;; n, _+ q+ c" D4 J) S; Y" G
    for i = 1:n  stopBar= progressbar(x/n,0);   if (stopBar) break; end   end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%progressbar需要两个输入变量,第一个,完成百分比,第二个,位置。
    • [x, y] - Position of lower left corner in normalized units (0.0 - 1.0)
    • 0 - Centered (Default)
    • 1 - Upper right
    • 2 - Upper left
    • 3 - Lower left
    • 4 - Lower right
    • 5 - Random [x, y] position# S& w: J& L  P; B% s; W4 ~
    % a8 b( Z8 Q/ ^+ M

    ! h: ]+ A7 C3 q* D
    # V4 c1 B+ H# t- c& i9 B6 a! |8 u) O
    另外还可以去下载到另一个版本的waitbar
    ' H0 K+ b& @) z7 ?9 O6 b7 r+ ch = waitbar(0,'Please wait...');4 {2 I) ]9 e( g: W, V+ ]( t
    n = 1000;
    3 ]. d5 v1 D! Y- N2 s% progressbar % Create figure and set starting time
    , L+ y: F6 j' T0 i( H, ofor i = 1:n
    8 h: A2 E+ I! z6 y: W% E/ Y/ E    pause(0.01) % Do something important0,
    5 g0 `% C+ D/ J7 a) B    waitbar(i/1000,h)
    8 \) q& V" n8 `! Kend* }: X) C: m$ T# d
    % X! O. q$ ~- H1 g* ]! ]: S

    4 r/ |+ S0 h" S+ x: {4 B9 T3 w这个版本的一个问题就是,当中途关闭waitbar时,会有错误提示。
    5 A; ]) z0 Z- u7 h, Q# o推荐使用第一个版本的。
    , U% e9 g: x5 T; X! V3 |( X7 g* T1 N8 x+ o

    & v5 y& v. p% A2 f

    该用户从未签到

    2#
    发表于 2020-7-31 14:39 | 只看该作者
    Matlab progressbar
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-11-24 20:10 , Processed in 0.171875 second(s), 26 queries , Gzip On.

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

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

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