【问题标题】:How to make a progress bar/meter in web2py?如何在 web2py 中制作进度条/仪表?
【发布时间】:2011-02-15 10:44:04
【问题描述】:

我在 web2py 中做了一个进度表,但它只显示在终端窗口中。如何使进度条/仪表在 web2py 的 HTML 页面中工作?

这是部分代码:

k = 1 # This is the loop variable for subplots.
for counter in nus:
    fig = plt.figure()
    D = E*(h**3)/(12*(1-counter**2)) # Cylindrical rigidity.
    T0 = (L**2)/(D*np.pi**2)*T0_orig # Nondimensional tension.
    amax = T0/kappa # Maximum allowed alpha (to keep tension nonnegative everywhere).
    alphas = [0, (10**-6)*amax, (10**-4)*amax, (10**-2)*amax] # Nondimensional alphas to use for plot.
    workdone = 0.0 # How much of the Figure has been calculated? 0.0 = none, 1.0 = Figure is ready to show.
    workstep = 100.0/len(alphas) # How much work is done during one step in the loop? If there are 4 steps in the loop, then then step will be 100.0/4 = 25.0.
    for alpha in alphas:
        lambda_, xx, f = nonhomog_solver(kappa, alpha, nu, nx)
        V0 = np.sqrt( T0_orig/m + np.pi**2 * D/(m*L**2)*lambda_ )
        if (k == 1):
            V0_ref = V0

        # Figure 1
        fig_a = fig.add_subplot(2,2,k)
        fig.subplots_adjust(hspace=0.4)
        if (k == 1):
            fig_a.set_title(r'$\alpha / \alpha_{max} = %.2g, V_{0}^{ref} = %.6g$ m/s' % (alpha/amax, V0))
        else:
            fig_a.set_title(r'$\alpha / \alpha_{max} = %.2g, V_{0}/V_{0}^{ref} = %.6g$' % (alpha/amax, V0/V0_ref))
        fig_a.plot(xx,f)
        plt.xlim(-kappa,kappa)
        plt.xlabel(r'$\eta$')
        plt.ylim(-0.1,1.1)
        if ((k == 1) or (k == 3)):
            plt.ylabel(r'$f(\eta)$')
        workdone = workdone + workstep
        print "Figure 1:", workdone, "%/100.0% done."

        # Let's get ready for the next subfigure.
        k = k + 1

【问题讨论】:

    标签: python html progress-bar web2py


    【解决方案1】:

    您最好询问mailing list

    您的代码是否在控制器函数内部(或被控制器函数调用)?请注意,打印语句不会向网页发送任何输出(即,它们不会影响 HTTP 响应)——为此,您的控制器需要向视图返回一个字典(或返回一个字符串)。对于进度条,您可能最终需要使用Ajax(另请参阅here)。

    这个Client Tools 模块有一个进度条示例(滚动到“更多示例”部分)。我没用过,不确定它是否适合你的用例,但它可能会给你一些想法。

    【讨论】:

      猜你喜欢
      • 2011-02-09
      • 1970-01-01
      • 2011-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-05
      • 2021-08-05
      • 1970-01-01
      相关资源
      最近更新 更多