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

Matlab progressbar

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    如果matlab在运行需要很长时间的程序,或者是要循环很多遍的时候,用户就不知道程序运行到了什么地方了。每次输出循环变量i是一个办法,但太丑陋了。Matlab提供了waitbar函数。简单运行如下:
    3 A: p: D) i9 Hh = waitbar(0,'Please wait...');( c7 F2 z3 {6 J! m
    n = 1000;1 x( x5 Q/ C1 k0 H1 z0 f0 g4 ?
    for i = 1:n* h# ?0 A3 W( \7 T7 q4 L! A( b7 b& r  H
        pause(0.01) % Do something important0,  Q7 h$ }* v( ~: `: ^1 D3 U
        waitbar(i/n,h)
    ( Y  p8 W& ^* rend9 d- i4 [+ f+ e) B6 G9 g3 Y- D( y
    * b3 |7 ~" p% C

    1 n  s" Z& C; _7 A) i0 n  K+ E1 ]& K1 Z3 F0 w

      W5 g( ^& Z0 {9 Y, E- c/ Y- I这个函数有三个缺点:) `: [$ @# ^" f7 m; l9 y% k6 k7 D$ `
    1. 没有显示完成的百分比
    : ^" z$ C! o% @7 J+ j: v2. 没有显示剩余完成时间+ \4 n2 n4 I. \" l/ Q! K9 Y
    3. 中途无法关闭waitbar
    ) x+ T( P$ o1 P8 B2 O& y4 N
    7 U1 x8 F8 k. A- M1 w有人改进了这个函数
    - E& L- v- U7 P$ H0 x0 s# w4 k& J1 T" Q  S3 `  u
    clear all;n = 1000;
    : l" Q; z4 o( @8 Ufor 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] position8 s- c7 Y# X: [7 i! b
    1 b- k. A" s" L2 m& ]/ h7 h
    4 W9 P9 R: g4 b- X
    - P  Q! E" m4 @5 C9 b' d* S  ~- S
    * A; L/ S& c) b5 P, S
    另外还可以去下载到另一个版本的waitbar8 ]  b, W: m# }1 \' {0 g& G
    h = waitbar(0,'Please wait...');
    9 d8 q/ B, X& xn = 1000;
    + X$ S* ^1 t3 C/ k  i# N# P% progressbar % Create figure and set starting time
    % x6 t3 E+ K3 Q* k& r; yfor i = 1:n
    . R; L+ L5 h- x6 c, F. O5 g9 Q    pause(0.01) % Do something important0,
      Q4 S* A/ d5 n( z    waitbar(i/1000,h)
    ' r9 J% c6 f1 I& Rend
    5 ^9 l0 e# M8 J: D; \- P: _
    : T  a0 q- X; ^- r% o0 y1 q1 P
    : b3 o) k) g$ ~这个版本的一个问题就是,当中途关闭waitbar时,会有错误提示。
    5 F) I; C; r2 p5 G  }2 z推荐使用第一个版本的。
    ( j( @/ a0 u4 \% J$ M: _0 M5 ?5 z5 n* C/ \) w; V$ z+ r

    # l8 a! x- q7 z$ X& ?. k: L4 U0 x

    该用户从未签到

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

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-8 03:36 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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