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

Matlab progressbar

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    如果matlab在运行需要很长时间的程序,或者是要循环很多遍的时候,用户就不知道程序运行到了什么地方了。每次输出循环变量i是一个办法,但太丑陋了。Matlab提供了waitbar函数。简单运行如下:4 x8 z" {: a# ]
    h = waitbar(0,'Please wait...');
    7 |6 o" M$ f' D: Z( F0 @: B4 \n = 1000;4 `0 u* I& M( p
    for i = 1:n
    ) m4 T; C3 i/ {8 @! m" B6 l    pause(0.01) % Do something important0,9 S9 m- s8 M" l) q  l
        waitbar(i/n,h)2 p" d6 D+ x. l+ f
    end7 G" G$ J7 u: l- P; H
    4 [# x+ _: P6 o6 A6 J. g: v% N

    ) V" @. @6 [" R' n; d+ ~. G
    # V0 g* j$ b  j4 r) _9 v) x* Q# \
    ; _+ y9 \9 h& U% V这个函数有三个缺点:: j/ D; k: y8 N9 R' g' V3 W
    1. 没有显示完成的百分比4 t' [3 S$ M( L+ w
    2. 没有显示剩余完成时间
    8 I3 F& M$ S( U% j3. 中途无法关闭waitbar* F/ P, @: L) m2 o2 e
    6 ^# k: {  w" W; Q: L0 C
    有人改进了这个函数
    - `' E. j2 C8 U9 D$ V0 J' H- o1 h" o; R$ u* q
    clear all;n = 1000;
    7 L0 U7 k- x: v9 d% k. P+ n8 lfor 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! D7 X0 }, C0 \- |4 [* E
    , `$ I% W6 U8 i7 F
    , H4 f, _/ v5 O
    3 n* p' P  a$ J. p% v
    3 l/ [/ w. h5 x; z2 i) O3 z
    另外还可以去下载到另一个版本的waitbar2 N" @- }8 D8 B: r- G7 E
    h = waitbar(0,'Please wait...');
    7 s- ^2 I" T3 W& h3 nn = 1000;
    9 N9 W# c  U' e# V" N% progressbar % Create figure and set starting time
    . z- I; c9 U3 L. w. ~( sfor i = 1:n! T" U4 u: ^1 h3 [
        pause(0.01) % Do something important0,1 n! L6 M$ s/ s( }$ V
        waitbar(i/1000,h)2 U: V  [% K( ^/ B
    end
    / u% ?5 Q/ z* }5 a! A9 Y; T8 K
      W1 N2 e" {/ n( m& S) q! M 7 J+ z8 Z+ L7 ^  `8 N7 y) q
    这个版本的一个问题就是,当中途关闭waitbar时,会有错误提示。2 A0 f' ]# y! z2 ^. H" o1 Q
    推荐使用第一个版本的。
    ) e3 G( I- O( ~. C# @8 {% z) T
    " F/ w3 J% A- h2 a& {3 \
    % r8 Y% W7 b( S0 M. y' M  ?

    该用户从未签到

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

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-27 08:45 , Processed in 0.109375 second(s), 26 queries , Gzip On.

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

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

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